欢迎来到天天文库
浏览记录
ID:36871686
大小:339.50 KB
页数:90页
时间:2019-05-10
《Java小应用程序(Applet)》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第12章Java小应用程序(Applet)的设计12.1编写一个Applet12.2Applet的通信12.1编写一个Applet要编写一个Applet,必须首先从java.applet.Applet派生一个类:importjava.applet.*;publicclassSimpleAppletextendsApplet{…}需要注意的是,派生出的Applet的类必须定义为public类型。java.applet.Applet类实际上是java.awt.Panel的子类。Applet和AWT类的继承关系如图12
2、.1所示。图12.1这种层次关系显示,一个Applet可直接用作一个AWT布局的容器。因为Applet是Panel的子类,所以它有一个缺省的流(Flow)布局管理器。Component,Container和Panel类的方法被Applet类继承了下来。12.1.1Applet的执行框架在Java出现之前,人们就已经开始使用HTML(超文本标记语言)进行Web页面的设计了。然而,对HTML稍有了解的人都知道,HTML所提供的设计能力是极其有限的。Java率先提供了让Web页面实现更丰富的GUI和逻辑运算能力的方法,
3、这种方法是通过将一个Java的类插入到Web页面中来实现的。如何编写一个Applet并令它在浏览器中执行呢?方法很简单,只要继承java.applet包下的Applet类,并实现一些必要的方法即可。下面我们来看一个最简单的Applet的例子,并学会怎样在浏览器中令它运行。例12.1SimpleApplet.javaimportjava.applet.*;importjava.awt.*;publicclassSimpleAppletextendsApplet{Stringtext=null;publicvoidi
4、nit(){text="Asimpleappletdemo!";setBackground(Color.YELLOW);}publicvoidstart(){System.out.println("starting...");}publicvoidstop(){System.out.println("stopping...");}publicvoiddestroy(){System.out.println("preparingtounload...");}publicvoidpaint(Graphicsg){Sy
5、stem.out.println("Paint");g.drawString(text,15,25);}}上面是一个最简单的Applet例子,大家可能已经发现,这个程序没有main()方法,的确,我们前面所学到的Java应用程序都必须由main()方法处进入,而在一个Applet中却不是这样。Applet的生命周期稍微有些复杂,它需要通过浏览器来运行,所以为了执行它,还必须有一个HTML编写的Web页面。例12.2SimpleApplet.html
6、plet"codebase=.code=SimpleApplet.classwidth=200height=100>这里将不准备详细讨论有关HTML的问题,如果不太了解,可以自己查阅相关资料。我们只稍微解释一下上面的HTML代码。它通过标记和参数告诉浏览器下载执行一个Applet。其中,name这个参数表示Applet的名字;codebase表示编译好的Applet字节码的路径;code表示Applet文件的文件名;width和height指定了该Ap
7、plet的宽度和高度。name和codebase这两个参数并不是必须的,如果Applet字节码文件和html文件在同一路径下,则可以不加codebase参数。width和height这两个参数一定要加,所以在Applet程序中可以不需要设置Applet的Panel的大小。把这个HTML文件和编译好的Applet保存在同一个目录下(HTML文件并不一定要和Applet同名),然后用浏览器打开这个HTML文件,将看到这个最简单的小应用程序的运行结果。除了通过浏览器来运行Applet,Java平台本身也提供了一个调试A
8、pplet的方法。在JDK包中带有一个小应用程序观察器AppletViewer.exe,只要在Windows命令行窗口中输入:appletviewerSimpleApplet.html就会看到和在浏览器中运行基本相同的输出结果。图12.2和图12.3分别列出了通过两种方式运行例子SimpleApplet的输出结果。现在我们来看看这个Applet到底是如何运作的。大家可能已
此文档下载收益归作者所有