Java语言程序设计案例教程 教学课件 ppt 作者 陈炜 第9章

上传人:E**** 文档编号:89383871 上传时间:2019-05-24 格式:PPT 页数:25 大小:394.50KB
返回 下载 相关 举报
Java语言程序设计案例教程 教学课件 ppt 作者  陈炜 第9章_第1页
第1页 / 共25页
Java语言程序设计案例教程 教学课件 ppt 作者  陈炜 第9章_第2页
第2页 / 共25页
Java语言程序设计案例教程 教学课件 ppt 作者  陈炜 第9章_第3页
第3页 / 共25页
Java语言程序设计案例教程 教学课件 ppt 作者  陈炜 第9章_第4页
第4页 / 共25页
Java语言程序设计案例教程 教学课件 ppt 作者  陈炜 第9章_第5页
第5页 / 共25页
点击查看更多>>
资源描述

《Java语言程序设计案例教程 教学课件 ppt 作者 陈炜 第9章》由会员分享,可在线阅读,更多相关《Java语言程序设计案例教程 教学课件 ppt 作者 陈炜 第9章(25页珍藏版)》请在金锄头文库上搜索。

1、第9章 Applet基础,在Java中,有两种类型的程序:应用程序(Application)和小应用程序(Applet)。Java Applet可以被HTML页面引用,并可以在支持Java的浏览器中执行,可以说Applet具有“激活因特网”的强大功能。运用本章的知识,将能够开发自己的Applet和动态页面。 本章要点 9.1 Java Applet概念 9.2 Applet绘制图形与图像处理 9.3 Applet的其他应用 思考与练习9,9.1 Java Applet概念,Java Applet是用Java编写的、含有可视化内容的、并被嵌入Web页中用来产生特殊页面效果的小程序。 Java A

2、pplet程序的特点有: 1基本的绘画功能 2动态页面效果 3动画和声音的播放 4交互功能的实现 5窗口开发环境 6网络交流能力的实现,9.1 Java Applet概念,9.1.1 Java Applet的概念 Java Applet是一种非常重要的Java程序,是工作在Internet浏览器上的Java程序。Java Applet主要用来将Java程序插入HTML网页中,在网络上传输,作为网页的一部分来执行。 在Java问世的头几年里,Applet之所以如此热门,其根本原因还是在于Java具有“让Internet动起来”的能力。具体地说,就是Java能创建一种特殊类型的程序(通常称作“小应

3、用程序”或者Applet),具备Java能力的Web浏览器可从网上下载这种程序,然后运行。 目前,几乎所有浏览器均支持动态HTML(DHTML)和脚本编制(支持XML的浏览器也有很多),所以比起Java刚刚问世的时候,浏览器能够做的事情要多得多。但尽管如此,由于小应用程序是用一种全功能的程序设计语言编制的,所以同HTML、XML和脚本语言的任何一种可能的组合相比,它仍然具有很好前景。,9.1 Java Applet概念,9.1.1 Java Applet的概念 Applet的基本工作原理是这样的:编译好的字节码文件(.class文件)保存在特定的WWW服务器上,同一个或另一个WWW服务器上保存

4、着嵌入了该字节码文件名的HTML文件。当某一个浏览器向服务器请求下载嵌入了Applet的HTML文件时,该文件从WWW服务器上下载到客户端,由WWW浏览器解释HTML中的各种标记,按照其约定将文件中的信息以一定的格式显示在用户屏幕上。 当浏览器遇到HTML文件中的特殊标记,表明它嵌有一个Applet时,浏览器会根据这个Applet的名字和位置自动把字节码从WWW服务器上下载到本地,并利用浏览器本身拥有的Java解释器直接执行该字节码。 Applet工作原理如图9-1所示。,8.1 Java图形用户界面概述,图9-1 Applet的基本工作原理,9.1 Java Applet概念,9.1.1 J

5、ava Applet的概念 Applet类似于组件,它所实现的功能是不完全的,与Application程序不同。Applet与Application的主要区别在于它们的执行方式不同: (1)Java Applet程序是在WWW浏览器环境下运行的,即不是完整独立的运行程序; (2)运行Java Applet程序的解释器不是独立的软件,而是嵌在WWW浏览器中作为浏览器软件的一部分。 (3)Java Applet程序中不需要有main方法,但是Java Applet程序的主类必须是类库中已定义好的类Applet或JApplet的子类。 (4)Java Applet程序可以直接利用浏览器或Applet

6、Viewer提供图形用户界面,而Java Application程序则必须另外书写专用代码来营建自己的图形界面。,9.1 Java Applet概念,9.1.2 Applet类 要编写一个Applet,必须首先用以下方式创建一个类: import java.applet.*; public class HelloWorld extends Applet Applet的类必须为public,且它的名称必须与它所在的文件名匹配;在这里,就是HelloWorld.java。而且,该类必须为java.applet.Applet的子类。 java.applet.Applet类实际上是java.awt.P

7、anel的子类。Applet的继承关系如图9-2所示。,9.1 Java Applet概念,9.1.2 Applet类 图9-2 Applet类的继承关系 java.applet包包含有三个接口:AppletContext接口、AppletStub接口、AudioClip接口及一个Applet类。,图9-2 Applet类的继承关系,9.1 Java Applet概念,9.1.4 Applet标记 Applet程序在运行时,都在HTML文件中嵌入了Applet标记:,其中至少包括三个参数:code,height,width。除此之外,还有其他一些可选的参数。 以下为Applet标记的完整句法:

8、 . ,9.1 Java Applet概念,9.1.4 Applet标记 每个选项的解释如下: (1)archive = archiveList:这一可选的选项描述了一个或多个含有将被“预装”的类和其他资源的archives。类的装载由带有给定codebase的AppletClassLoader的一个实例来完成。ArchiveList中的archives以逗号(,)分隔。 (2)code = appletFile.class :这是一个必需的选项,它给定了含有已编译好的Applet子类的文件名。也可用package.appletFile.class的格式来表示。 这个文件与你要装入的HTML文

9、件的URL有关,它不能含有路径名。一般情况下,Applet子类的类文件与HTML文件放在同一个目录中,所以无需路径。如果类文件和HTML文件不在一个目录下,需要用到选项,也就是说,要改变Applet的URL,可使用选项。,9.1 Java Applet概念,9.1.4 Applet标记 (3)width = pixels height = pixels:这些必需的选项给出了Applet显示区域的初始宽度和高度(以象素为单位),不包括Applet所产生的任何窗口或对话框。 (4)codebase = codebaseURL:这一可选的选项指定了Applet的URL包含有Applet代码的目录。如

10、果这一选项未指定,则认为Applet的类文件与HTML文件在同一个目录中。 (5)alt = alternateText:这一可选选项指定了当浏览器能读取Applet标记但不能执行Java Applet时要显示的文本。 (6)name = appletInstanceName:这个可选选项为Applet实例指定有关名称,从而使得在同一页面上的Applet可以互相通信。,9.1 Java Applet概念,9.1.4 Applet标记 (7)align = alignment:这个可选选项指定了Applet的对齐方式。它的可取值与基本的HTML中IMG标记的相应属性相同,为:left,right

11、,top,texttop,middle,absmiddle,baseline,bottom和absbottom。 (8)vspace = pixels hspace = pixels:这些可选选项指定了在Applet上下(vspace)及左右(hspace)的象素数目。其用法与IMG标记的vspace和hspace属性相同。 (9):这个选项提供了一种可带有由“外部”指定的数值的Applet,也就是说可以将value的值作为HTML参数传递给Applet去处理。它和Java Application程序的命令行参数的作用相同。Applet用getParameter()方法来存取参数。,9.2 A

12、pplet绘制图形与图像处理,9.2.1 绘制图形 Applet本身是一个AWT组件,因此它也具有一般AWT组件的图形绘制及图像处理功能。 Applet程序中所采用的AWT的绘图机制主要涉及三个方法:paint()方法、update()方法和repaint()方法,update()方法和paint()方法都有一个Graphics类的参数。Graphics类是画图的关键,它可以支持两种绘图:一种是基本的绘图,如:画线、矩形、圆等;另一种是画图像,主要用于动画制作。 Applet的显示更新是由一个AWT线程来控制完成的,它主要负责两种显示更新情况:一是表示部分显示区域被遮盖、调整大小、最大最小化等

13、,这种情况随时会发生,需要系统调用paint()方法;二是程序需要重画显示区域,添加一些新的显示内容,需要调用repaint()方法。,9.2 Applet绘制图形与图像处理,9.2.1 绘制图形 要进行绘图,首先要找到一个Graphics类的对象。update()方法和paint()方法所传递的参数都是Graphics类的对象,因此主要是通过重载它们来进行绘图,这也是在动画程序中经常使用的方法。我们还可以通过getGraphics()方法得到一个Graphics类的对象,这个对象和update()方法和paint()方法中所传递的对象一样,都是该成员所对应的Graphics类的对象。得到了G

14、raphics类的对象,就可使用各种绘图方法。 1paint(Graphics g)方法: Applet本身是一个容器,因此任何输出都必须用图形方法paint()。当Applet程序首次被装载,以及每次窗口放大、缩小、刷新时都要调用paint()方法。 paint()是由AWT线程调用的,而不是由程序调用,当程序希望调用paint()方法时,用repaint()方法。 paint()方法的参数是Graphics类的对象g,该对象不是由new产生的,而是由系统或其他方式直接将生好的Graphics对象当作方法的参数,再交给paint()方法。 paint()方法必须被重写以绘制自己所需的内容。,

15、9.2 Applet绘制图形与图像处理,9.2.1 绘制图形 2update()方法: update()方法用于更新图形。它首先清除背景,然后设置前景,再调用paint()方法完成Applet中的具体绘图。一般不重写update()方法。 3repaint()方法: repaint()方法主要用于重绘图形,它是通过调用update()方法来实现图形重绘的。当组件外形发生变化时,系统自动调用repaint()方法。 另外,在进行基本画图时,可以设定所需的颜色和字体等,这需要用到Font、FontMetrics(支持文字输出的字体类)和Color三个类。,9.2 Applet绘制图形与图像处理,9

16、.2.2 图像处理 在Java中,类库java.awt,java.awt.image和java.applet中都提供了支持图像操作的类和方法,对图像的操作包括载入、生成、显示和处理。 在Java中,图像信息是封装在抽象类Image中的,由于Image是一个抽象类,因此不能直接生成一个图像对象,需要采用特殊的方法载入或生成图像对象。 1载入图像 对于Applet,由于它主要在网络上运行,因此网络上图像文件需要用URL形式来描述,例如: URL picurl= new URL (“http:/ 在Applet中提供了两个方法来载入图像对象: public Image getImage(URL url) public Image getImage(URL url,String name) 例如: Image img1 = getImage(picurl); Image img2 = getImage(getCodeBase(),“img2.gif”);,9.2 Applet绘制图形与

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号