Java-applet

合集下载
相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Applet概述-Applet限制
Applet 的限制有以下几个方面
·不能加载库函数或定义本地方法。 ·不能读写本地计算机上的文件系统。 ·除了下载它的服务器外不能和其它主机建立网络通讯。 ·不能运行本地计算机上的任何程序。 ·不能读取某些系统特性。 ·Applet打开的窗口和Application打开的窗口在外观上有所不同。
运行Applet-App浏览器中运行需要具备的特定 方法
•浏览器载入时,要依次运行init、start、paint方法 •离开浏览器页面时,执行stop •退出浏览器时,执行destroy
提供了所有这些方法的默认实现,所以我们在 编写自己的applet时,就可以不必写出全部方法, 只要继承这个JApplet,然后重写特定的方法来增 加特殊功能
ng.Object ponent java.awt.Container java.awt.Panel java.applet.Applet javax.swing.JApplet
Applet类
要编写一个Applet,必须首先用以下方式创建一个类: import java.applet.*; public class HelloWorld extends Applet { … } Applet的类必须为public,且它的名称必须与它所在的 文件名匹配;在这里,就是HelloWorld.java。而且, 该类必须为java.applet.Applet的子类。 java.applet.Applet类实际上是java.awt.Panel的子类。 Applet的继承关系如上图所示。
Applet能够做的事情:
· 可以和它所在的Web服务器建立网络连接。 · 能使Web浏览器方便地显示HTML文档内容。 · 离开网页后Applet可以继续运行也可以停止运行。 · 可在状态栏显示短信息。 · 可以调用同一个网页上的其它Applet中的公共方法。 · 可以播放声音文件。 · 可以从HTML的<Applet>标签中获取参数。 · 从本地计算机上加载Applet时没有从网络加载时所附带的限制。
响应 (返回HTML文档 以及图像、音频等文件)
传输协议 :// 主机 [: 端口] [/ 文件] [# 引用]
Web基础- HTML
<Html> <Head> <Title>页标题</Title> </Head> <Body> 主体 </Body> </Html>
Applet概述
• Applet是一种特殊的Java程序,经过编译后可被嵌入 到HTML文件中,并由Web浏览器内置的Java解释器执行。 所有Applet都继承自同一个类:java.applet.Applet,这 个类是Java语言的基础类,有关Applet的所有特性都 被定义在这个类中。

注意:应在Applet中引入Graphics类的包或该类:
import java.awt.Graphics;
Applet绘制图形与图像处理
要进行绘图,首先要找到一个Graphics类的对象。update()方法和
paint()方法所传递的参数都是Graphics类的对象,因此主要是通过重
载它们来进行绘图,这也是在动画程序中经常使用的方法。我们还 可以通过getGraphics()方法得到一个Graphics类的对象,这个对象和
Applet应用程序
目录
• Web应用基础 • Applet概述 • 运行Applet
Web应用基础-Internet
• 计算机网络与Internet • TCP/IP • Internet地址 • IP地址,形如xxx.xxx.xxx.xxx • 域名系统。例如 • Internet提供的服务:全球信息网(WWW)、电子邮件(E-ma il)、文件传输(FTP)、远程登录(Telnet)等。 • 客户-服务器模式
在start()方法中可启动相关线程来控制Applet,给引入类对象 发送消息,或以某种方式通知Applet开始运行。该方法是A pplet的主体。
3.stop()方法
该方法与start()方法是相对应的,在Applet执行过程 中,也会被浏览器调用多次。在下列情况下,浏览器会调用st op()方法。 (1)浏览器从图标状态恢复为窗口状态或缩放浏览器 窗口时。 (2)离开Applet所在Web页时。
Init()方法
在Applet执行过程中,init()方法只执行一次。当 浏览器第一次浏览含有Applet的Web页载入Applet 时,就会执行init()方法。
由于在Applet执行过程中,该方法只被执行一次, 所以可以在init()方法中进行一些只需执行一次的 初始化操作,如变量的初始化、设置Applet初始状 态、载入图形或字体、获取HTML中Applet标记单元 中<PARAM>设定的参数等。
Applet概述-含有Java Applet的Web页
Applet概述-Web页源文件部分内容
Applet概述-Applet应用程序的运行原理
运行Applet
• JApplet类
• 一个applet程序需要继承javax.swing包中的JApplet类,也可以 继承老的AWT组件中的Applet类, JApplet类属于新的Swing组件
• 在Applet执行过程中,paint()方法可以被浏览器自动 调用执行绘图操作,可调用多次。当调整浏览窗口大小、缩放 浏览窗口、移动窗口或reload等需要重绘窗口时都会调用pain t()方法。 • 与其他4个方法不同的是,paint()中需传递一个参数, 该参数是Graphics类的对象,由这个对象来完成具体的绘图操 作。Graphics对象由浏览器自动创建并将其传送给paint()方 法。
打开或刷新浏览器时
创建Applet对象 Applet不显示时 执行stop()
关闭浏览器时 执行stop()
执行init() 执行start() 初始态 运行态
关闭浏览器时 执行destroy() 停止态 消亡态
Applet显示时 执行start()
Applet执行的方法
方法 public void init() 调用时机和用途 当浏览器(即Applet容器)载入某个Applet时,容器会自动 创建这个Applet类的一个实例,并调用它的init方法 public void paint(Gra start方法启动后调用此方法,另外每次需要重绘applet时也 将调用该方法。程序通常不直接调用paint phics g) public void repaint() 在响应用户和Applet的交互时经常要用到。通常只是调用, 而不重写这个方法。对于轻量级组件,它调用组件的paint方 法,对重量级组件它调用组件的update方法,由update调用p aint public void stop() 用户离开Applet所在的HTML页时调用该方法,它执行挂起Appl et所需的所有任务,例如停止动画和线程 public void destroy() 用户关闭浏览器窗口,Applet将从内存中移走的时候调用该 方法 public void start() init方法执行结束之后,自动调用这个方法。另外,当浏览 器用户在访问另一个网址之后重新返回applet所在的HTML页 时,将再次调用start方法
浏览器与Applet具有如下关系:
• 在浏览器中打开包含Applet对象的页面时, 创建并初始化其中的Applet对象。 • 显示Applet时,启动Applet线程运行。 • 不显示Applet时,停止 Applet线程运行。 • 在浏览器中关闭页面窗口时,销毁Applet对 象。
Applet概述-Applet的状态及状态变化
Applet概述- Java和HTML的关系
• 理解Applet和HTML的关系对应用Applet非常重要。 • HTML是网页设计语言,它采用一整套标记来定义Web页。一 个HTML文件可定义一个Web页,文件的扩展名为 .html或 . htm。 • HTML可以没有Applet,但很多重要功能将无法实现,而App let有赖于HTML才能运行,二者共同为Internet这个虚拟世 界增添光彩。
start()方法
• 调用完init()方法,浏览器将调用start()方法启动Applet。和in it()方法不同,在Applet的执行过程中,start()方法可被浏览 器调用多次。在下列情况下,浏览器会调用start()方法。
(1)浏览器从图标状态恢复为窗口状态或缩放浏览器窗口时。 (2)Applet第一次载入时。 (3)离开该Web页后又再返回时。 (4)reload该页面时。
Applet概述- Applet的特点
• Applet是一种在Web页中运行的小应用程序。 • Java的Applet与Application有一个明显的区 别:Application是独立程序,可直接通过Jav a解释器来解释运行;而Applet只能在Web浏览 器上运行,必须通过<Applet>标签将编译后的 字节码文件嵌入到Web页中。
4.destroy()方法
destroy()方法是Applet类的类方法,只能用于Applet。
可在该方法中执行释放系统资源的代码。但一般不需重写dest
roy()方法,因为Java运行系统本身会自动进行“垃圾”处理 和内存管理,除非用了特殊的资源如创建的线程。
4.destroy()方法
注意:destroy()方法与stop()方法不同。 • 除了上述4个方法外,Applet还提供一个非常重要的方 法:paint(Graphics g)方法。该方法用于进行绘图的具体 操作,但没有实现任何操作,用户可重写该方法,实现个性化 的绘图操作。
• •
(3)reload该页面时。 (4)关闭该Web页时。


(5)从该Web页退出浏览器运行时。
stop()方法可在适当时机挂起 Applet,停止一些占用
系统资源的工作,释放系统处理资源,以提高系统的运行速度。
4.destroy()方法
• 在彻底结束对该Web页的访问或退出浏览 器时调用destroy()方法,卸载Applet, 释放载入Applet时分配的系统资源。在Ap plet的执行过程中,destroy()方法只执 行一次。
update()方法和paint()方法中所传递的对象一样,都是该成员所对应
的Graphics类的对象。得到了Graphics类的对象,就可使用各种绘图 方法。
Applet绘制图形与图像处理
1.paint(Graphics g)方法: Applet本身是一个容器,因此任何输出都必须用图形 方法paint()。当Applet程序首次被装载,以及每次窗 口放大、缩小、刷新时都要调用paint()方法。 paint()是由AWT线程调用的,而不是由程序调用,当 程序希望调用paint()方法时,用repaint()方法。 paint()方法的参数是Graphics类的对象g,该对象不 是由new产生的,而是由系统或其他方式直接将生好的 Graphics对象当作方法的参数,再交给paint()方法。 paint()方法必须被重写以绘制自己所需的内容。
Web应用基础-WWW浏览
请求 (发送HTML文件的URL,如 /index.html) HTTP协议 Web服务器 Web站点 超链接 主页 Web页
客户端
• • • • • •
WWW 浏览器解释执行 HTML文档 HTTP Web站点、Web页 HTML 浏览器 URL
Applet生命周期
• 程序运行从开始到结束的过程称为程序的生 命周期。 • 独立应用程序的生命周期从main()方法开 始,直到运行结束。 • Applet应用程序的生命周期与浏览器相关。 作为浏览器的一部分,Applet程序何时运行, 何时结束都由浏览器控制,Applet对象只是 作为浏览器窗口中运行的一个线程。
相关文档
最新文档