当前位置: 技术问答>java相关
请问applet到底有哪些用途?
来源: 互联网 发布时间:2015-04-20
本文导语: 我是java初学者,想知道applet到底可以给用户提供那些服务,有什么作用?请全面一点! | Java Applet是用Java编写的、含有可视化内容的、并被嵌入Web页中用来产生特殊页面效果的小程序。 一....
我是java初学者,想知道applet到底可以给用户提供那些服务,有什么作用?请全面一点!
|
Java Applet是用Java编写的、含有可视化内容的、并被嵌入Web页中用来产生特殊页面效果的小程序。
一.Applet特点
1.基本的绘画功能
2.动态页面效果
3.动画和声音的播放
4.交互功能的实现
5.窗口开发环境
6.网络交流能力的实现
二.Applet类的继承树
三.Applet的主要方法及生命周期
小应用程序生命周期中有很多不同的行为:初始化、绘画或是鼠标事件等。每一种行为都对应一个相关的方法,在Java小应用程序中有五种相对重要的方法:初始化init()、开始执行start()、停止执行stop()、退出destroy()、绘画paint()。
1.public void init()初始化:在整个Applet生命周期中,初始化只进行一次.
当第一次浏览含有Applet的WEB页时,浏览器将:
a.下载该Applet
b.创建对象--产生一个该Applet主类的实例
c.调用init()对Applet自身进行初始化.
在init()方法中可设置程序初始状态,载入图形或字体,获取 HTML中 设定的参数等.
2.public void start()启动Applet:在整个Applet生命周期中,启动可发生多次
在下列情况下,浏览器会调用start()方法:
a.Applet第一次载入时.
b.离开该Web页后,再次进入时(back,forward).
c.Reload该页面时.
d.在浏览含有Applet的WEB页时用浏览器右上角缩放按钮缩放浏览窗口大小时.
在start()方法中可启动一线程来控制Applet,给引入类对象发送消息,或以某种方式通知Java小应用程序开始运行.
3.public void stop()停止执行Applet:在整个Applet生命周期中,停止执行可发生多次.
在下列四种情况下,浏览器会调用stop()方法:
a.离开Applet所在 Web页时(用back,forward).
b.Reload该页面时
c.在浏览含有Applet的WEB页时用浏览器右上角缩放按钮缩放浏览窗口大小时.
d.close该Web页(彻底结束对该页面的访问).exit结束浏览器运行时(从含有该小应用程序的WEB页退出时).
stop()挂起小应用程序,可释放系统处理资源.不然当浏览者离开一个页面时,小应用程序还将继续运行.
4.public void paint(Graphics g)绘制:可多次发生
在下列情况下,浏览器会调用paint()方法:
a.Web页中含有Applet的部分被卷入窗口时.
b.Applet显示区域在视线内时调整浏览窗口大小、缩放浏览窗口、移动窗口或Reload等需要重绘窗口时都会调用paint()方法.
与前几个方法不同的是,paint()中带有一个参数Graphics g,它表明paint()需要引用一个Graphics类的对象实体.
在Applet中不用编程者操心,浏览器会自动创建Graphics对象并将其传送给paint()方法.但编程者应在小应用程序中引入Graphics类所在的包
import java.awt.Graphics;
5.public void destroy()退出或取消:在整个Applet生命周期中,退出只发生一次.
在彻底结束对该Web页的访问和结束浏览器运行时(close exit)调用一次.
*destroy()是java.applet.Applet类中定义的方法,只能用于小应用程序.
*可在该方法中编写释放系统资源的代码.但除非你用了特殊的资源如创建的线程,否则不需重写destroy()方法,因为Java运行系统本身会自动进行"垃圾"处理和内存管理.
例:几个方法的调用过程AppletLife.html(在Netscape Navigator中选择Communicator->Tools->Java Console,打开Java Console进行各种操作,即可看到几个重要方法的执行情况)
AppletLife.java:
import java.awt.*;
import java.applet.Applet;
public class AppletLife extends Applet
{ public static int colors=10;
Font font;
public void init()
{System.out.println("Now init");
font = new java.awt.Font("TimesRoman", Font.PLAIN, 36);
}
public void start()
{System.out.println("Now start");
}
public void stop()
{System.out.println("Now stop");
}
public void paint(Graphics g)
{ int red = (int)(Math.random() * 50);
int green = (int)(Math.random() * 50);
int blue = (int)(Math.random() * 256);
g.setFont(font);
g.setColor(new Color((red +colors * 30) % 256,
(green + colors / 3) % 256, blue));
colors=colors+10;
System.out.println("Now paint");
g.drawString("hello",30,30);
}
public void destroy()
{System.out.println("Now destroy");
}
}
一.Applet特点
1.基本的绘画功能
2.动态页面效果
3.动画和声音的播放
4.交互功能的实现
5.窗口开发环境
6.网络交流能力的实现
二.Applet类的继承树
三.Applet的主要方法及生命周期
小应用程序生命周期中有很多不同的行为:初始化、绘画或是鼠标事件等。每一种行为都对应一个相关的方法,在Java小应用程序中有五种相对重要的方法:初始化init()、开始执行start()、停止执行stop()、退出destroy()、绘画paint()。
1.public void init()初始化:在整个Applet生命周期中,初始化只进行一次.
当第一次浏览含有Applet的WEB页时,浏览器将:
a.下载该Applet
b.创建对象--产生一个该Applet主类的实例
c.调用init()对Applet自身进行初始化.
在init()方法中可设置程序初始状态,载入图形或字体,获取 HTML中 设定的参数等.
2.public void start()启动Applet:在整个Applet生命周期中,启动可发生多次
在下列情况下,浏览器会调用start()方法:
a.Applet第一次载入时.
b.离开该Web页后,再次进入时(back,forward).
c.Reload该页面时.
d.在浏览含有Applet的WEB页时用浏览器右上角缩放按钮缩放浏览窗口大小时.
在start()方法中可启动一线程来控制Applet,给引入类对象发送消息,或以某种方式通知Java小应用程序开始运行.
3.public void stop()停止执行Applet:在整个Applet生命周期中,停止执行可发生多次.
在下列四种情况下,浏览器会调用stop()方法:
a.离开Applet所在 Web页时(用back,forward).
b.Reload该页面时
c.在浏览含有Applet的WEB页时用浏览器右上角缩放按钮缩放浏览窗口大小时.
d.close该Web页(彻底结束对该页面的访问).exit结束浏览器运行时(从含有该小应用程序的WEB页退出时).
stop()挂起小应用程序,可释放系统处理资源.不然当浏览者离开一个页面时,小应用程序还将继续运行.
4.public void paint(Graphics g)绘制:可多次发生
在下列情况下,浏览器会调用paint()方法:
a.Web页中含有Applet的部分被卷入窗口时.
b.Applet显示区域在视线内时调整浏览窗口大小、缩放浏览窗口、移动窗口或Reload等需要重绘窗口时都会调用paint()方法.
与前几个方法不同的是,paint()中带有一个参数Graphics g,它表明paint()需要引用一个Graphics类的对象实体.
在Applet中不用编程者操心,浏览器会自动创建Graphics对象并将其传送给paint()方法.但编程者应在小应用程序中引入Graphics类所在的包
import java.awt.Graphics;
5.public void destroy()退出或取消:在整个Applet生命周期中,退出只发生一次.
在彻底结束对该Web页的访问和结束浏览器运行时(close exit)调用一次.
*destroy()是java.applet.Applet类中定义的方法,只能用于小应用程序.
*可在该方法中编写释放系统资源的代码.但除非你用了特殊的资源如创建的线程,否则不需重写destroy()方法,因为Java运行系统本身会自动进行"垃圾"处理和内存管理.
例:几个方法的调用过程AppletLife.html(在Netscape Navigator中选择Communicator->Tools->Java Console,打开Java Console进行各种操作,即可看到几个重要方法的执行情况)
AppletLife.java:
import java.awt.*;
import java.applet.Applet;
public class AppletLife extends Applet
{ public static int colors=10;
Font font;
public void init()
{System.out.println("Now init");
font = new java.awt.Font("TimesRoman", Font.PLAIN, 36);
}
public void start()
{System.out.println("Now start");
}
public void stop()
{System.out.println("Now stop");
}
public void paint(Graphics g)
{ int red = (int)(Math.random() * 50);
int green = (int)(Math.random() * 50);
int blue = (int)(Math.random() * 256);
g.setFont(font);
g.setColor(new Color((red +colors * 30) % 256,
(green + colors / 3) % 256, blue));
colors=colors+10;
System.out.println("Now paint");
g.drawString("hello",30,30);
}
public void destroy()
{System.out.println("Now destroy");
}
}
|
强调JAVA的网络嘛,有了APPLET就可以把你的JAVA可视化在网络上。总之好处多了!挺有意思的