Java小Applet是继承自java.applet.Applet的类,这种类可以嵌入到一个HTML页面中,并且通过浏览器来下载和执行,所以,applet类必须被定义为public的,否则的话浏览器就无法去加载这个类。Applet类是不需要main方法的,由浏览器中内嵌的Java虚拟机调用执行。java.applet.Applet继承自java.awt.panel,所以我们可以在applet中添加任何组件,并且其缺省的布局管理器是flowLayout。

Applet的安全机制:
        applet类是从远程的服务器上下载,并且在本地执行的,所以安全性就显得格外重要,通常我们要限制其的沙箱(applet的运行环境)中运行。从而保证对于本地系统而言applet是安全的。
       
applet运行时的限制:
1.不能运行任何本地可执行程序;
2.除了存放下载的applet的服务器外,applet不能和其他主机进行通信;
3.不能对本地文件系统读写。

applet的生命周期:
java.applet.Applet类中有四个方法,init,start,stop,destroy表示了applet的生命周期。
init():当浏览器加载applet,进行初始化的时候调用该方法,所以,我们在编写applet的时候不需要提供构造方法,我们应该将所有的初始化操作放在这个方法当中,因为当浏览器加载applet,调用applet构造函数的时候,有些初始化工作还没有做完。
start():在init方法之后调用,当用户从其他页面转到包含applet的页面时,该方法也被调用,即一个applet重新可见的时候调用这个方法。
stop():当用户离开包含applet的页面时,被调用。即一个applet不可见的时候调用这个方法。
destroy():当applet不再被使用,或浏览器退出的时候调用这个方法。

测试applet的方式:
1.嵌在HTML网页中,由嵌在浏览器中的虚拟机解释执行。
2.使用appletviewer来执行,由于appletviewer只是在给定的文件中查找<applet>标签(即使在注释中也可以),而无论这个标签是放在哪个或那种文件中的。所以我们可以就将<applet>标签放在applet所在的java源文件中,如下例:
AppletTest.java
#############################################################################
import java.applet.Applet;

public class AppletTest extends Applet
{
    public void init()
    {
        System.out.println("init!");
    }
   
    public void start()
    {
        System.out.println("start!");
    }
   
    public void stop()
    {
        System.out.println("stop!");
    }   
   
    public void destroy()
    {
        System.out.println("destroy!");
    }
}

//<applet code=AppletTest.class width=600 height=400>
//</applet>
#############################################################################
执行 appletviewer AppletTest.java即可。

       
Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐