什么是Applet?
java applet是能够被包含在HTML页面中并且能被启用了java的客户端浏览器执行的程序。Applet主要用来创建动态交互的web应用程序。
applet可以经历下面的状态:
·Init:每次被载入的时候都会被初始化。
·Start:开始执行applet。
·Stop:结束执行applet。
·Destroy:卸载applet之前,做最后的清理工作。
当applet被载入的时首先会创建applet控制类的实例,然后初始化applet,最后开始运行。
applet是运行在启用了java的浏览器中,Java应用程序是可以在浏览器之外运行的独立的Java程序。但是,它们都需要有Java虚拟机。
进一步来说,Java应用程序需要一个有特定方法签名的main函数来开始执行。Java
applet不需要这样的函数来开始执行。
最后,Java applet一般会使用很严格的安全策略,Java应用一般使用比较宽松的安全策略。
由于安全的原因,给applet施加了以下的限制:
·applet不能够载入类库或者定义本地方法。
·applet不能在宿主机上读写文件。
·applet不能读取特定的系统属性。
·applet不能发起网络连接,除非是跟宿主机。
·applet不能够开启宿主机上其他任何的程序。
不受信任的applet是不能访问或是执行本地系统文件的Java applet,默认情况下,所有下载的applet都是不受信任的。
从网络上加载的applet和从本地文件系统加载的applet有一定区别。当applet是从网络上加载的时候,applet是由applet类加载器载入的,它受applet
安全管理器的限制。
当applet是从客户端的本地磁盘载入的时候,applet是由文件系统加载器载入的。从文件系统载入的applet允许在客户端读文件,写文件,加载类库,并且也允许执行其他程序,但是,却通不过字节码校验。