1 Applet
定义:applet 是一种不能单独运行但可嵌入在其他应用程序中的小程序。 Applet
类必须是任何嵌入 Web 页或可用 Java Applet Viewer 查看的 applet 的超类。Applet
类提供了 applet 及其运行环境之间的标准接口。
Applet由浏览器来启动和执行,其执行过程如下:
(1) 浏览器载入HTML文件
(2) 浏览器载入HTML文件中引用的Applet的字节码
(3) 浏览器启动java虚拟机执行Applet
Applet中没有main方法,必须编写一个HTML文件,使用以下标记把该Applet嵌入其中:
<applet code=“xxx .class" width=xxx height=xxx>
</applet>
一个简单的小程序例子:
import java.applet.*;
import java.awt.*;
public AppletText extends Applet {
public void paint(Graphics g){
g.dramString("this is a simple Applet",50,60);
}
}
创建一个用于调用 Applet 的 HTML 文件
<html>
<applet code=“AppletText.class” width=200 height=200>
</applet>
</body>
</html>
Applet小应用程序通常需要覆盖的方法:
--init()方法 初始化方法,首次装载applet时由JVM自动调用
--start()方法 调用init方法之后自动调用这个方法,start方法可以被多次调用,而init方法仅仅会被调用一次
--stop()方法 该方法在用户离开包含applet的页面时会被自动调用。对同一个applet,该方法会被多次调用。
--destroy()方法 仅仅在浏览器正常退出时,该方法会被调用。
--paint()方法
2 显示Applet的小程序
编程实例:
用于定时轮循显示一个数组中的10个数字以产生动画效果,这个程序可以分为两个阶段来完成:
(1)实现定时功能,让一个index变量的取值,每隔100毫秒在0-9之间循环变化显示。
(2)增加显示数字动画的功能,只要在每次改变index变量的值后,显示出数组中的第index个数字,可以产生动画效果
import java.applet.*;
import java.awt.*;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
public class MyAppletextends Applet implements Runnable {
int index;
public void init(){
new Thread(this).start();
}
public void paint(Graphics g){
g.setFont(new Font(null,Font.ITALIC|Font.BOLD,30));
g.drawString(""+index,0,60);
}
@Override
public void run() {
// TODO Auto-generated method stub
while(true)
{
try{
Thread.sleep(100);
}catch(Exception e){
e.printStackTrace();
index=(index+1)%10;
}
}
}
}
1 Applet的相关知识
F 体会容器与插件的程序架构设计模式
FApplet程序中的控制台输出
F Applet程序的限制
--不能启动执行其他应用程序
--不能进行文件I/O操作
--不能调用本机代码
--不能与Applet所在的主机之外的其它主机进行网络连接
3 HTML语言中Java Applet插件标记语法格式:
<applet
[archive = archiveList]
code = appletFile.class
width = pixels height = pixels
[codebase = codebaseURL]
[alt = alternateText]
[name = appletInstanceName]
[align = alignment]
[vspace = pixels] [hspace = pixels]
>
[param name = var1 value = value1]
[param name = var2 value = value2]
……
</applet>
4 JavaScript访问Applet
<script language=”JavaScript”>
<!--
Function SetText()
{
Document.app.text=”java就业培训教程”;
Document.app.repaint();
}
//-->
</script>
<applet code=”MyApplet.class” width= “100” height=”28” name=”app” >
你的浏览器不支持Java Applet!
</applet>
<input type=”button” value=”改变文本” οnclick=”SetText()”>
5 <OBJECT>标记
àW3C协会建议人们用<OBJECT>标记来代替<APPLET>标记。
à如何使用HTMLConverter将<Applet>标记转换成<OBJECT>标记。
à使用<OBJECT>标记,执行Applet小程序的java解释器被作为一个ActiveX插件引用。
à使用<OBJECT>标记比<APPLET>标记多了自动下载和安装java解释器的功能。