Java Applet基础
Java Applet基础
Java Applet基础
applet是⼀种Java程序。它⼀般运⾏在⽀持Java的Web浏览器内。因为它有完整的Java
API⽀持,所以applet是⼀个全功能的Java应⽤程序。
下所⽰是独⽴的Java应⽤程序和applet程序之间重要的不同:
Java 中applet类继承了 j ava.applet .Applet类
Applet类没有定义main() ,所以⼀个 Applet程序不会调⽤main()⽅法,
Applets被设计为嵌⼊在⼀个HTML页⾯。
当⽤户浏览包含Applet的HTML页⾯,Applet的代码就被下载到⽤户的机器上。
要查看⼀个applet需要JVM 。 JVM可以是Web浏览器的⼀个插件,或⼀个独⽴
的运⾏时环境。
⽤户机器上的JVM创建⼀个applet类的实例,并调⽤Applet⽣命周期过程中的各
种⽅法。
Applets有Web浏览器强制执⾏的严格的安全规则,applet的安全机制被称为沙箱
安全。
applet需要的其他类可以⽤Java归档 (JAR )⽂件的形式下载下来。
Applet 的⽣命周期
Applet类中的四个⽅法给你提供了⼀个框架,你可以再该框架上开发⼩程序:
init: 该⽅法的⽬的是为你的applet提供所需的任何初始化。在Applet标记内的
param标签被处理后调⽤该⽅法。
start: 浏览器调⽤init⽅法后,该⽅法被⾃动调⽤。每当⽤户从其他页⾯返回到
包含Applet的页⾯时,则调⽤该⽅法。
stop:当⽤户从包含applet的页⾯移除的时候,该⽅法⾃动被调⽤。因此,可以
在相同的applet 中反复调⽤该⽅法。
destroy: 此⽅法仅当浏览器正常关闭时调⽤。因为applets只有在HTML ⽹页上有
效,所以你不应该在⽤户离开包含Applet的页⾯后遗漏任何资源.
paint: 该⽅法在start()⽅法之后⽴即被调⽤,或者在applet需要重绘在浏览器的
时候调⽤。paint()⽅法实际上继承于j ava.awt 。
"Hello, World " Applet:
下⾯是⼀个简单的Applet程序HelloWorl Applet .j ava:
import java.applet.*;
import java.awt.*;
public class HelloWorldApplet extends Applet
{
public void paint (Graphics g
{
g.drawString ("Hello World", 25, 50 ;
}
}
这些import语句将以下类导⼊到我们的applet类中:
java.applet.Applet.
java.awt.Graphics.
没有这些import语句,Java编译器就识别不了Applet和Graphics类。
Applet 类
每⼀个applet都是j ava.applet .Applet 类的⼦类,基础的Applet类提供了供衍⽣类调⽤的
⽅法,以此来得到浏览器上下⽂的信息和服务。
这些⽅法做了 下事情:
得到applet的参数
得到包含applet的HTML⽂件的⽹络位置
得到applet类⽬录的⽹络位置
打印浏览器的状态信息
获取⼀张图⽚
获取⼀个⾳频⽚段
播放⼀个⾳频⽚段
调整此 applet 的⼤⼩
除此之外,Applet类还提供了⼀个接⼜,该接⼜供Viewer或浏览器来获取applet的信
息,并且来控制applet的执⾏。
Viewer可能是:
请求applet作者、版本和版权的信息
请求applet识别的参数的描述
初始化applet
销毁applet
开始执⾏applet
结束执⾏applet
Applet类提供了对这些⽅法的默认实现,这些⽅法可以在需要的时候重写。
"Hello ,Worl "applet都是按标准编写的。唯⼀被重写的⽅法是paint⽅法。
Appl