java系统学习(十八) --------Applet设计
2015-10-23 17:29
459 查看
Applet编程是java编程语言中至关重要的独特功能。它不同于一般的Java程序,其能够嵌入到HTML网页中,并由支持Java的Web浏览器解释执行。只有IE浏览器3 .0以上的版本,才支持Java Applet程序。通过这种小应用程序。所设计的网页就能有一定的交互功能。早期的java编程applet应用很多,随着web方面的发展,applet应用已经在减少,逐渐被activeX, flash, js等取代, 这里我们还是大概了解一下。
Applet类位于java.applet包中,由于其继承自Panel类,所以也是一个容器,可以包含AWT组件。为了能够对Applet有一个很好的理解,先看个很简单的实例,学习如何编写Applet应用程序。
Appletviewer 以html为扩展名的文件名
在Applet程序中,不需要主运行函数,取而代之的则是使用init(), start(), stop()和destroy()方法。下面介绍这几个函数。
口public void init():完成Applet的初始化操作。
口public void start():启动浏览器运行Applet程序。
口public void stop():暂停Applet的执行。
口public void destroy():撤销Applet的执行。
这4个函数也就形成了Applet的生命周期。它们的执行步骤如下:
加载Applet类--创建Applet对象(调用构造器)--init()--Start()
Java可以播放的声音文件格式有AIFF, AU, WAV, MIDI, RMF等。Applet包中的AudioClip接口包含了与声音相关的API,它可以实现声音文件的反复播放,在需要的时候.可
以停止声音文件的播放。AudioClip接口中的一些常用的方法如下。
口void play():播放声音文件一次。
口void stop():停止播放声音文件。
口void loop():循环播放声音文件。
若想播放声音文件,只需从Applet对象中获取AudioClip对象即可,在Applet类中有一些与AudioClip接口相配合的方法,具体如下所示。
口public void play(URL url):播放指定url处的声音文件。
口public void play(URL url,String name):播放指定位置url处、名称为name的声一音文件。
口public final static AudioClip newAudioClip(URL url):获取可用于播放指定位置url处声音文件的AudioClip对象。
口public AudioClip getAudioClip(URL url),public AudioClip getAudioClip(URL url,string name):都是获取播放指定位置声音文件的AudioClip对象。
口public Image getImage(URL url):获取url指定的图像对象。
口public Image getImage(URL url,string name):使用指定的url及name,获取图像。
与Applet类有关的相关位置的方法如下。
口public URL getCodeBase():获取Applet Code位置URL。
口public URL getDocumentBase():获取Web页位置URL。
口void showDocument(URL url):显示url指定的网页。
口public void showDocument(URL url,String target):将url指定的Web页面显示于目标窗口中。
口Applet getApplet(String name):获取同一网页中名为name的Applet。
口Enumeration getApplets():获取同一网页中的所有的Applet。
口void showStatus(String status):在浏览器的状态栏中显示status字符串。
为了能解决上面这个问题,Applet已经提供了安全的保障,以防止其内含威胁用户安全的代码。
Applet包含下列安全事项:
口Applet无法运行用户计算机中的程序。
口Applet无法访问用户计算机中的文件。
口Applet无法获取用户计算机中的大部分信息、。
口Applet无法调用用户计算机中的native method。
口Applet只能与提供本Applet的服务器进行通信。
在同一个目录下创建一个HTML文件如下:
当运行时,程序会不断地播放ding.wav这个声音文件,直到转到其他页面,才会停止播放音乐。
<html>
<body>
<Applet code="..\..\myclass\MyJavaApplet.class" height=200 width=300>
</Applet>
</body>
</html>
如果HTML文件和class文件在同一个目录下,则不用写路径名,直接写“My.IavaAppletclass”即可。
Applet的基本概念及生命周期
Applet是在Web浏览器中运行的Java小应用程序.它能够嵌入到HTML页面中,并可以通过Web浏览器下载和执行。一个java程序要想运行,必须编写主运行函数,即只要把所有要运行的内容放到主运行函数中,就可以运行。但是在Applet小程序中,并不需要主运行函数,它由Web浏览器中的Java虚拟机调用执行。Applet类位于java.applet包中,由于其继承自Panel类,所以也是一个容器,可以包含AWT组件。为了能够对Applet有一个很好的理解,先看个很简单的实例,学习如何编写Applet应用程序。
import java.applet.* public class testl extends Applet //继承Applet类 { }然后在同一个目录中,建立一个以HTML为扩展名的文件。
<html> <body> <Applet code="testl.class" width="200" height="200"> </Applet> </body> </html>最后在DOS窗口中,使用如下命令。
Appletviewer 以html为扩展名的文件名
在Applet程序中,不需要主运行函数,取而代之的则是使用init(), start(), stop()和destroy()方法。下面介绍这几个函数。
口public void init():完成Applet的初始化操作。
口public void start():启动浏览器运行Applet程序。
口public void stop():暂停Applet的执行。
口public void destroy():撤销Applet的执行。
这4个函数也就形成了Applet的生命周期。它们的执行步骤如下:
加载Applet类--创建Applet对象(调用构造器)--init()--Start()
Applet的多媒体处理
声音处理
处理声音和图像是Applet兴起的原因。本节将会通过实例,学习如何针对这些多媒体的内容进行处理。其实多媒体的处理不是一件很难的事情,关键在于函数的调用。Java可以播放的声音文件格式有AIFF, AU, WAV, MIDI, RMF等。Applet包中的AudioClip接口包含了与声音相关的API,它可以实现声音文件的反复播放,在需要的时候.可
以停止声音文件的播放。AudioClip接口中的一些常用的方法如下。
口void play():播放声音文件一次。
口void stop():停止播放声音文件。
口void loop():循环播放声音文件。
若想播放声音文件,只需从Applet对象中获取AudioClip对象即可,在Applet类中有一些与AudioClip接口相配合的方法,具体如下所示。
口public void play(URL url):播放指定url处的声音文件。
口public void play(URL url,String name):播放指定位置url处、名称为name的声一音文件。
口public final static AudioClip newAudioClip(URL url):获取可用于播放指定位置url处声音文件的AudioClip对象。
口public AudioClip getAudioClip(URL url),public AudioClip getAudioClip(URL url,string name):都是获取播放指定位置声音文件的AudioClip对象。
图像处理
无论是处理声音还是处理图像,最关键的就是把握好函数的运用。Applet类中与图像处理有关的方法如下。口public Image getImage(URL url):获取url指定的图像对象。
口public Image getImage(URL url,string name):使用指定的url及name,获取图像。
与Applet类有关的相关位置的方法如下。
口public URL getCodeBase():获取Applet Code位置URL。
口public URL getDocumentBase():获取Web页位置URL。
如何用Applet控制浏览器
在API中有一个类:AppletContext类,利用此类,不仅可以控制浏览器,也可以控制同一网页中其他的Applet。下面列举AppIetContext类的常用方法。口void showDocument(URL url):显示url指定的网页。
口public void showDocument(URL url,String target):将url指定的Web页面显示于目标窗口中。
口Applet getApplet(String name):获取同一网页中名为name的Applet。
口Enumeration getApplets():获取同一网页中的所有的Applet。
口void showStatus(String status):在浏览器的状态栏中显示status字符串。
Applet的安全
当访问包含Applet的网页的时候,不管愿意还是不愿意,网页中的Applet都会被下载并且运行。如果程序员设计一个恶意的Applet,那么用户访问这个网页的时候,就会对用户进行攻击。为了能解决上面这个问题,Applet已经提供了安全的保障,以防止其内含威胁用户安全的代码。
Applet包含下列安全事项:
口Applet无法运行用户计算机中的程序。
口Applet无法访问用户计算机中的文件。
口Applet无法获取用户计算机中的大部分信息、。
口Applet无法调用用户计算机中的native method。
口Applet只能与提供本Applet的服务器进行通信。
例子
Java文件//导入包 import java.applet.*; import java.awt.*; public class test2 extends Applet{ //Applet程序 AudioClip voice; //创建一个AudioClip对象voice public void init(){ //初始化方法 //为对象voice赋值,实现播放音乐 voice=getAudioClip(getCodeBase(),"ding.wav"); } public void start(){//运行时方法 voice.loop(); //设置音乐循环播放 } public void stop()( //暂停方法 voice.stop(); //设置音乐停止播放 } }
在同一个目录下创建一个HTML文件如下:
<html> <body> 《-加载test2.class文件-》 <Applet code="test2 .class" width="200" height="200"> </Applet> </body> </html>
当运行时,程序会不断地播放ding.wav这个声音文件,直到转到其他页面,才会停止播放音乐。
常见问题
浏览器如何运行Applet
首先,确定Applet已经被编译为 .class文件,然后编写一个*.htm文件(扩展名也可以是.html),代码如下:<html>
<body>
<Applet code="..\..\myclass\MyJavaApplet.class" height=200 width=300>
</Applet>
</body>
</html>
如果HTML文件和class文件在同一个目录下,则不用写路径名,直接写“My.IavaAppletclass”即可。
相关文章推荐
- iOS---打印逗号数量
- Swift 语言概览
- 关于android.support.annotation找不到的问题
- 项目tip
- Android wakelock 自上而下浅析
- Android Alarm自上而下 调试浅析
- iOS9 - 自定义URL Scheme完成应用间的跳转
- iOS开发~CocoaPods使用详细说明
- Top Android App使用的组件(四)
- Android如何实现获取短信验证码的功能
- iOS @property的默认属性
- Android RTC 自下往上浅析
- 安卓开发学习之002 LinearLayout之android:layout_gravity详解
- Android Studio使用--了解项目结构
- android listview的divider分割线的宽度设置
- android读取短信内容 自动填充验证码
- 如何通过友盟分析发布后App崩溃日志
- 转:Android 签名验证机制(相当不错,强烈推荐)
- <iOS>百度推送
- swift:入门知识之协议与扩展