Applet

  Applets用于为Web应用程序提供交互功能,这些功能无法单独由HTML提供。它们可以捕获鼠标输入,并且还具有按钮复选框等控件响应于用户动作,小应用程序可以改变提供的图形内容。这使得小程序非常适合演示,可视化和教学。

  一个applet也可以只是一个文本区域; 例如,为某些远程系统提供跨平台的命令行界面。如果需要,一个小程序可以离开专用区域并作为单独的窗口运行。然而,applet对applet专用区域之外的网页内容几乎没有任何控制,所以它们对于改善站点外观通常不太有用,而不像其他类型的浏览器扩展。Applets还可以播放本机不受浏览器支持的格式的媒体。以HTML编码的页面可能会在其中嵌入传递给小程序的参数。因此,根据传递的参数,相同的小程序可能会有不同的外观。

  Java applet扩展了该类java.applet.Applet,或者Swing小程序javax.swing.JApplet必须重写applet类中的方法以在其内部设置用户界面的类(Applet)是其后代的Panel后代Container由于小程序是从容器继承的,因此它具有与普通Java应用程序基本相同的用户界面可能性,包括具有用户特定可视化的区域。

以下示例说明了通过java.applet包使用Java小程序。该示例还使用Java Abstract Window Toolkit(AWT)中的类生成消息“ Hello,world! ”作为输出。

import  java.applet。* ; 
import  java.awt。* ;

//“Hello,world!”的Applet代码 例。
//这应该保存在名为“HelloWorld.java”的文件中。
公共 HelloWorld  扩展 Applet  { 
    //在屏幕上打印一条消息(x = 20,y = 10)。
    public  void  paint Graphics  g { 
        g drawString之“你好,世界!” 20 10 );

        //在屏幕上绘制一个圆圈(x = 40,y = 30)。
        g drawArc 40 30 20 20 0 360 );

        //在屏幕上绘制一个矩形(x1 = 100,y1 = 100,x2 = 300,y2 = 300)。
        g drawRect中100 100 300 300 );

        //在屏幕上绘制正方形(x1 = 100,y1 = 100,x2 = 200,y2 = 200)。
        g drawRect中100 100 200 200 ); 
    } 
}

简单的小程序可以在Internet上自由共享,以定制支持插件的应用程序

编译完成后,生成的.class文件可以放在Web服务器上,并通过<applet><object>标签HTML页面中调用。

例如:

<!DOCTYPE html> 
< html > 
< head > 
  < title > HelloWorld_example.html </ title > 
</ head > 
< body > 
  < h1 > Java applet示例</ h1 > 
  < p >
    这里是:
    < applet  code = “HelloWorld.class”  height = “40”  width = “200” >
      这是HelloWorld.class运行的地方。
    </ applet > 
  </ p > 
</ body > 
</ html >

当页面被访问时,它将如下所示:

一个Java applet示例
这里是:你好,世界!

为了尽量减少下载时间,小程序可以以jar文件的形式提供在这个例子的情况下,如果所有必需的类都放在压缩存档example.jar中,则可以使用以下嵌入代码:

< p >
  这里是:
  < applet  archive = “example.jar”  code = “HelloWorld”  height = “40”  width = “200” >
    这是HelloWorld.class运行的地方。
  </ applet > 
</ p >

与其他客户端Web技术相比,Java小程序可能具有以下缺点

Java小程序依赖于Java运行时环境(JRE),这是一个相当复杂和重量级的软件包。

它通常还需要Web浏览器的插件。有些组织只允许管理员安装软件。因此,有些用户只能查看足够重要的小程序,以便与管理员联系以请求安装JRE和插件。如果applet需要比系统上可用的更新的JRE或特定的JRE,则第一次运行它的用户需要等待大型JRE下载完成。

大多数浏览器,特别是iOS或Android上的移动浏览器,根本不运行Java小程序。[39]与旧applet标签不同,object标签需要解决方法才能编写跨浏览器HTML文档。

屏幕阅读器没有可用的小程序内容。因此,小程序可能会损害具有特殊需求的用户访问网站。

与任何客户端脚本一样,安全限制可能会使不可信任的小程序难以达到预期的目标,甚至不可能达到预期的目标。但是,只需在JAVA JRE安装中编辑java.policy文件,就可以授予对本地文件系统或系统剪贴板的访问权限,或者允许访问除applet提供给浏览器的网络源以外的其他网络源。

 

posted @ 2018-06-03 11:38  ~xu~  阅读(176)  评论(0编辑  收藏  举报