Java Applet
- 格式:doc
- 大小:41.50 KB
- 文档页数:3
一、Java Applet 基础Applet 是一种Java 程序。
它一般运行在支持Java 的Web 浏览器内。
因为它有完整的Java API支持,所以Applet 是一个全功能的Java 应用程序。
如下所示是独立的Java 应用程序和applet 程序之间重要的不同:Java 中Applet 类继承了java.applet.Applet 类。
Applet 类没有定义main(),所以一个Applet 程序不会调用main() 方法。
Applet 被设计为嵌入在一个HTML 页面。
当用户浏览包含Applet 的HTML 页面,Applet 的代码就被下载到用户的机器上。
要查看一个Applet 需要JVM。
JVM 可以是Web 浏览器的一个插件,或一个独立的运行时环境。
用户机器上的JVM 创建一个Applet 类的实例,并调用Applet 生命周期过程中的各种方法。
Applet 有Web 浏览器强制执行的严格的安全规则,Applet 的安全机制被称为沙箱安全。
Applet 需要的其他类可以用Java 归档(JAR)文件的形式下载下来。
二、Applet的生命周期Applet 类中的四个方法给我们提供了一个框架,你可以在该框架上开发小程序:init: 该方法的目的是为你的Applet 提供所需的任何初始化。
在Applet 标记内的param 标签被处理后调用该方法。
start: 浏览器调用init 方法后,该方法被自动调用。
每当用户从其他页面返回到包含Applet 的页面时,则调用该方法。
stop: 当用户从包含Applet 的页面移除的时候,该方法自动被调用。
因此,可以在相同的Applet 中反复调用该方法。
destroy: 此方法仅当浏览器正常关闭时调用。
因为Applet 只有在HTML 网页上有效,所以你不应该在用户离开包含Applet 的页面后遗漏任何资源。
paint: 该方法在start() 方法之后立即被调用,或者在Applet 需要重绘在浏览器的时候调用。
第11章Java小程序(Applet)第11章Java Applet(Java小程序)11.1 11.2 11.3 11.4Applet概述java.applet.Applet类Applet小程序的设计步骤在Applet小程序中插入图片11.5 在Applet小程序中播放声音11.6 从网页向Applet小程序传送参数*11.7 Applet的安全限制本章要点掌握Java小程序(Applet)编写方法掌握Applet四个方法的作用理解Applet生命周期概念掌握在Applet中显示图片、音频等外部资源方法掌握从网页向Applet传递参数的方法11.1 Applet概述Applet是基于Web的Java应用程序,俗称Java小程序Applet程序通常保存在Web服务器中,一旦用户提出申请,可自动被下载至客户端客户端内嵌有Java虚拟机的浏览器可通过html文件运行Applet程序Applet程序要在图形界面中运行由于Applet属于“外来程序”,对它的安全性要求必须十分严格Applet小程序实例// Example9_1.java import java.applet.*; import java.awt.*; public class Example9_1 extends Applet{ int x=5; public void init(){ //对Applet对象进行初始化setForeground(Color.RED); Font f=new Font(“宋体",Font.BOLD,28); setFont(f); } public void paint(Graphics g){ //绘制Applet图形界面x=x+1; if(x=200) x=5; g.drawString("我们正在编写Applet小程序",20,x); repaint(); for(int i=0;i2022年0000;i++); } } !C Example9_1.html -- applet code=Example9_1.class height=180 width=370 /applet 说明:在IE浏览器中打开Example9_1.html文件运行结果如下所示(一行字不断从上往下移动):程序实例说明Applet小程序中不须定义主方法main() 因为它的字节代码文件不是通过命令java.exe启动Java虚拟机被执行它是通过内嵌在浏览器中的Java虚拟机被运行的。
Applet可以翻译为小应用程序,Java Applet就是用Java语言编写的这样的一些小应用程序,它们可以直接嵌入到网页中,并能够产生特殊的效果。
Applet类中的四种基本方法用来控制其运行状态:init()、start()、stop()、destroy()
init()方法
这个方法主要是为Applet的正常运行做一些初始化工作。
当一个Applet被系统调用时,系统首先调用的就是该方法。
通常可以在该方法中完成从网页向Applet传递参数,添加用户界面的基本组件等操作。
start()方法
系统在调用完init()方法之后,将自动调用start()方法。
而且,每当用户离开包含该Applet的主页后又再返回时,系统又会再执行一遍start()方法。
这就意味着start()方法可以被多次执行,而不像init()方法。
因此,可把只希望执行一遍的代码放在init()方法中。
可以在start()方法中开始一个线程,如继续一个动画、声音等。
stop()方法
这个方法在用户离开Applet所在页面时执行,因此,它也是可以被多次执行的。
它使你可以在用户并不注意Applet的时候,停止一些耗用系统资源的工作以免影响系统的运行速度,且并不需要人为地去调用该方法。
如果Applet中不包含动画、声音等程序,通常也不必实现该方法。
destroy()方法
与对象的finalize()方法不同,Java在浏览器关闭的时候才调用该方法。
Applet是嵌在HTML文件中的,所以destroty()方法不关心何时Applet被关闭,它在浏览器关闭的时候自动执行。
在destroy()方法中一般可以要求收回占用的非内存独立资源。
(如果在Applet仍在运行时浏览器被关闭,系统将先执行stop()方法,再执行destroy()方法。
编写一个Applet例子,每当用户按下鼠标,该程序就在鼠标被按下的位置显示字符串“Holle Word !”。
package javaApplet;
import java.applet.Applet;
import java.awt.Graphics;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
/**
* 要编写Applet,必须以下面的形式创建一个类,即extends Applet
*/
public class HwMouse extends Applet implements MouseListener {
int mouseX = 25;
int mouseY = 25;
public void init(){
addMouseListener(this);
}
/*
* Applet本身就是一个容器,任何输出都必须用的图形方法paint()
* paint()方法的参数是Graphics类的对象g
*/
public void paint(Graphics g){
g.drawString("Hello Word !", mouseX, mouseY);
}
public void mousePressed(MouseEvent e) {
mouseX = e.getX();
mouseY = e.getY();
repaint();
}
public void mouseClicked(MouseEvent e) {}
public void mouseEntered(MouseEvent e) {}
public void mouseExited(MouseEvent e) {}
public void mouseReleased(MouseEvent e) {} }。