收藏 分享(赏)

java_11.ppt

上传人:sjmd695 文档编号:8646788 上传时间:2019-07-07 格式:PPT 页数:26 大小:165.50KB
下载 相关 举报
java_11.ppt_第1页
第1页 / 共26页
java_11.ppt_第2页
第2页 / 共26页
java_11.ppt_第3页
第3页 / 共26页
java_11.ppt_第4页
第4页 / 共26页
java_11.ppt_第5页
第5页 / 共26页
点击查看更多>>
资源描述

1、Java 编程基础,Java Applet,第十一章,本章主要内容,掌握如何编辑Applet 程序 了解Applet与Application的区别 掌握如何使用Applet,Java Applet程序基本结构,在第一章中已经介绍过Java Applet程序的基本结构,Java Applet程序结构特点,Java Applet程序由一个或多个源文件(.java)组成,每个文件由一个或多个类组成,每个类由若干个属性和方法组成 Applet程序中不需要main方法,但必须有且只有一个类是Applet类的子类,并且该类必须声明为public 这个类是主类 包含主类的 .java 文件是主文件 主文件名

2、必须与主类名相同 编译Applet程序的方法和编译Application程序类似 Applet程序必须由浏览器来运行,因此必须编辑一个超文本文件来运行源文件编译后生成的.class文件,下面介绍如何编辑一个Applet 程序,Java Applet的主要方法4-1,大多数的Applet程序都会重载一套方法 这些方法提供了www浏览器或Applet程序阅读器与Applet程序之间的接口以及前者对后者进行控制的基本机制 一共有五个方法 其中init、start、stop和destroy四个方法都是由Applet类定义的,paint方法是由GUI组件类定义的 这五个方法由Applet程序自动调用 可

3、以根据需要重载这五个方法,Java Applet的主要方法4-2,public void init() Applet对象创建后,会立刻自动调用该对象的init方法进行初始化 该方法在Applet对象的生存期内只调用一次 public void start() Applet对象初始化后,自动调用该方法启动Applet Applet被重新启动时,也会自动调用该方法 Applet在下面两种情况下被重新启动 刷新页面 转向其他页面后又返回,Java Applet的主要方法4-3,public void paint() Applet程序是一个GUI程序,Applet本身是一个GUI组件,该方法的作用与其

4、他GUI组件的paint方法相同,用于绘制Applet的外观 Applet启动后,自动调用该方法 public void stop() 停止Applet的运行(Applet还可以重新启动) Applet在下面三种情况下自动调用stop方法 当保留该Applet对象的浏览器窗口关闭时,在调用destroy方法之前 刷新页面时,在调用start方法之前 转向其他页面时,Java Applet的主要方法4-4,public void destroy() 当保留该Applet对象的浏览器窗口关闭时,Applet对象也将被销毁,在销毁Applet对象之前,自动调用该Applet对象的destroy方法,

5、用于释放Applet占用的资源 调用该方法之前,必定已经调用了stop方法 通常不用重载该方法,Applet 的生命周期,Working,Born,Displaying,Waiting,Destroyed,start( ),start( ),paint( ),stop( ),destroy( ),init( ),Applet主要方法使用说明,前面对Applet主要方法的说明中 在刷新页面和转向其他页面后又返回时,是不重新创建Applet对象的,仍然使用原来的Applet对象 这种说法来自于API文档 但实际使用时 在旧版本的JDK中符合前面的说明 但在最新版的JDK中,每次重新访问页面时都会重

6、新创建一个Applet对象 这样一来,初始化的代码是放在init方法中还是放在start方法中没什么区别,结束的代码是放在stop方法中还是放在destroy方法中也没什么区别 但一般还是参照方法说明来重写这五个方法,以规范程序设计 见示例ex01,Applet的应用2-1,Applet可以用来在网页上显示文字、绘制图形图像、制作简单动画、播放声音等 Applet绘制文字、图形和图像也是通过Graphics对象的方法来实现的 Applet制作简单动画可以通过延时重绘外观的方式实现 Applet播放声音可以通过两种方式实现 通过play方法播放一个音频文件 只能播放一次,播放完为止,即使中间关闭

7、浏览器窗口(只要不是关闭所有浏览器窗口)或转向其他页面也不结束播放 通过getAudioClip方法获得一个AudioClip对象后,再通过AudioClip对象的play、loop、stop方法控制声音的播放,Applet示例见ex02、ex03和ex04,Applet的应用2-2,Applet是GUI容器组件,可以包含除顶级容器之外的GUI组件,并进行布局管理和设置相应的事件监听器 Applet的默认布局管理器是顺序布局FlowLayout Applet制作简单动画还可以通过变化组件的方式实现 见示例ex05和ex06,Applet与Application的区别,除了运行方式不同,Appl

8、et与Application还有以下几点区别 不允许执行任何本地程序 不允许对本地文件进行读写操作 不能与其他服务器通信,只能与存放Applet程序的服务器进行通信 只能获取一些本地的系统环境信息,如Java虚拟机的版本、操作系统版本与名称等,不能获取隐私信息,如用户名、Email地址等 这几点也是Applet的安全规则 当Applet 程序违反安全规则时,Applet 安全管理器将抛出SecurityException异常,Applet与服务器进行通信,Java Applet只能与存放Applet程序的服务器进行通信 Applet可以对服务器上的文件进行读写操作 如读取音频文件并播放 也可以

9、通过输入输出流进行读写操作 与服务器端的程序进行交互 通过套接字实现 见示例ex07(通过输入输出流进行读写操作)和ex08(与服务器端的程序进行交互),Applet的使用,Applet程序必须添加到超文本文件中通过浏览器运行 要在超文本文件中添加Applet,必须使用APPLET标记或OBJECT标记 浏览器要正确显示并运行Applet,必须内嵌Java解释器插件 安装JRE时会自动安装Java解释器插件(即Java Plug-in) 也可以使用OBJECT标记将Applet 添加到超文本文件中,在浏览器载入该超文本文件时会自动下载和安装Java解释器插件,APPLET标记的格式,APPLE

10、T标记格式如下width= height=codebase=archive=alt=name=align=vspace=hspace= value= 替代内容 ,APPLET标记属性说明5-1,APPLET标记各属性说明如下 code 指定要执行的Applet 程序的名称,可以是主类名或主类的.class文件名 width和height 指定Applet占据的页面空间大小,单位为像素 一般根据Applet容器大小设置 codebase 指定Applet 程序文件所在目录相对于当前超文本文件的相对路径或Applet 程序文件所在目录的绝对路径 省略该属性则说明Applet 程序文件与当前超文本文

11、件在同一目录下,APPLET标记属性说明5-2,archive 指定一个文件名列表,列表中的文件在执行Applet 之前预先载入 如果有多个文件,用逗号分隔文件名 省略该属性则不预先载入相关文件,用到时再下载 可以将Applet 程序的所有相关文件压缩为一个或多个.jar文件以减少数据量,再将archive属性设置为这些.jar文件的文件名列表,浏览器会自动在这些.jar文件中查找该Applet 运行所需的文件,APPLET标记属性说明5-3,alt 当Applet 程序不能正常显示时,代替Applet显示的文本 省略该属性则显示空白 也可以在和标记之间插入HTML文本,用于浏览器不支持APP

12、LET标记时,替代显示 name 指定Applet的名称 通过对Applet命名,可以使同一页面上的Applet能够互相访问并通信,也便于脚本语句调用Applet 使用Applet对象的getApplet()方法可以获得当前页面上另一个Applet的实例对象 省略该属性则Applet 没有名称,APPLET标记属性说明5-4,align 指定Applet在页面上的对齐方式,其可能的取值有,APPLET标记属性说明5-5,vspace与hspace 指定Applet与页面上其他元素之间的垂直间距与水平间距,单位为像素 省略该属性则间距为0,PARAM标记的作用,PARAM标记用于超文本文件向Ap

13、plet传递初始参数 name属性指定参数名,value属性指定参数值 Applet 程序通过 public String getParameter(String name) 方法取得传递过来的参数 注意:超文本文件中的参数名要和getParameter方法中的参数名完全一致才能正确传递 Applet可以根据传递过来的参数设置程序 APPLET标记的使用见示例ex09,OBJECT标记的使用3-1,W3协会建议用OBJECT标记代替APPLET标记 OBJECT标记用于在页面上插入控件,该标记比较复杂,其中有四个属性是必需的 classid属性指定执行控件的插件程序的代号,对于Applet来说

14、,应指定Java解释器插件的代号 codebase属性指定插件下载位置,如果你的计算机上还没有安装这个插件,会自动从该属性指定的位置下载并安装 width和height属性指定控件占据的页面空间大小,单位为像素 可见,OBJECT标记比APPLET标记多了自动下载和安装Java解释器插件的功能,这样更为实用,OBJECT标记的使用3-2,我们不用死记硬背OBJECT标记的用法,JDK提供了一个命令行工具HTMLConverter,可以将一个已有的超文本文件中的APPLET标记转换成对应的OBJECT标记 打开命令行窗口,进入超文本文件所在目录,运行 “ HTMLConverter ” 命令可以

15、将指定超文本文件中的APPLET标记转换为OBJECT标记 上面的命令中,超文本文件名是区分大小写的 HTMLConverter工具会覆盖原来的文件,如果还需要原来的文件,要事先做好备份 OBJECT标记的使用见示例ex10,OBJECT标记的使用3-3,在ex08的超文本文件中,OBJECT标记对之间嵌入了一对COMMENT标记,这对COMMENT标记之间又嵌入了一对EMBED标记 这是为了保证Applet在Internet Explorer浏览器和Netscape Navigator浏览器上都能够正常运行 Netscape Navigator浏览器不支持OBJECT标记,它使用EMBED标记来运行Applet EMBED标记也提供了自动下载和安装Java解释器插件的功能 Internet Explorer浏览器不支持用EMBED标记运行Applet,因此将EMBED标记对放在COMMENT标记对之间,IE 浏览器会忽略COMMENT标记对之间的内容,AppletViewer工具,JDK提供了一个命令行工具AppletViewer,用于查看超文本文件中的Applet程序 打开命令行窗口,进入超文本文件所在目录,运行 “ AppletViewer ” 命令,可以查看超文本文件中的Applet的运行情况,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 企业管理 > 管理学资料

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报