Java object oriental technology java
This presentation is the property of its rightful owner.
Sponsored Links
1 / 36

面向对象技术 Java Object-Oriental Technology Java PowerPoint PPT Presentation


  • 72 Views
  • Uploaded on
  • Presentation posted in: General

面向对象技术 Java Object-Oriental Technology Java. 第 9 章 Java 小应用程序 Applet. 广东科学技术职业学院计算机工程技术学院 曾文权老师 Email : [email protected] 第 9 章 Java 小应用程序 Applet. 学习目标 ( Course Objectives) 了解小应用程序的原理 掌握小应用程序的开发步骤 能用 Java 语言编写小应用程序. 第 9 章 Java 小应用程序 Applet. 9.1 Applet 入门 9.2 Applet 的开发步骤

Download Presentation

面向对象技术 Java Object-Oriental Technology Java

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Java object oriental technology java

面向对象技术JavaObject-Oriental Technology Java

第9章 Java小应用程序Applet

广东科学技术职业学院计算机工程技术学院曾文权老师

Email:[email protected]

面向对象技术Java


9 java applet

第9章 Java小应用程序Applet

学习目标(Course Objectives)

  • 了解小应用程序的原理

  • 掌握小应用程序的开发步骤

  • 能用Java语言编写小应用程序

面向对象技术Java


9 java applet1

第9章 Java小应用程序Applet

9.1 Applet入门

9.2 Applet的开发步骤

9.3 Applet的常用方法

9.4 Applet的多媒体(Multimedia)应用

9.5 Applet间的通信

小结

面向对象技术Java


9 1 applet introduction

9.1 Applet Introduction

引入:

(1)C/B应用模式中,如何使Browser界面更为生动,即在Browser环境中实现图像表示、声音播放等多媒体功能?

(2)具有对Browser客户的交互事件处理、多线程运行、网络访问等灵活的Web功能。

(3)安全、跨平台的网络应用程序。

?

面向对象技术Java


9 1 applet introduction1

9.1 Applet Introduction

?

Solution:

Java Applet

面向对象技术Java


9 1 applet definition

9.1 Applet Definition

An applet is a program written in the JavaTM programming language that can be included in an HTML page, much in the same way an image is included. When you use a Java technology-enabled browser to view a page that contains an applet, the applet's code is transferred to your system and executed by the browser's Java Virtual Machine (JVM).

面向对象技术Java


9 1 applet secutiry

本地程序

9.1 Applet Secutiry

SERVER

Browser

Applet被下载的

connection

applet

file

SERVER

connection

local

与applet无关的

本地方法

Applet的沙箱模型

面向对象技术Java


Applications vs applets

Applications vs. Applets

(1) Similarities

They both are Java programs.

(2) Differences

  • An applet is a small program that is intended not to be run on its own, but rather to be embedded inside another application.

面向对象技术Java


Applications vs applets privileges

Applications vs. Applets——Privileges

(1) Applets are not allowed to read from, or write to, the file system of the computer viewing the applets.

(2) Applets are not allowed to run any programs on the browser’s computer.

(3) Applets are not allowed to establish connections between the user’s computer and another computer except with the server where the applets are stored.

面向对象技术Java


9 2 applet

9.2 Applet的开发步骤

编辑Applet的Java源文件( Edit Source Applet)

import java.awt.*;

import java.applet.*;

public class JavaWorld extends Applet

{

public void paint(Graphics g)

{

g.drawString("Java World!",15,25);

}

}

SourceFile: JavaWorld.java

面向对象技术Java


9 2 applet1

9.2 Applet程序开发步骤

Compiling Programs:

On command line

javac JavaWorld.java

ByteCodeFile: JavaWorld.class

面向对象技术Java


Creating an html file embeded with applet

Creating an HTML File Embeded with Applet:

<html>

<title> java World! Appplet<title>

<applet code="JavaWorld.class“ width=300 height=200>

</applet>

<html>

HtmlFile: JavaWorld.html

面向对象技术Java


Viewing java applets

Viewing Java Applets:

面向对象技术Java


9 2 applet2

9.2 Applet程序开发步骤

Applet Viewer Utility :

appletviewer JavaWorld.html

Example:

appletviewer JavaWorld.html

Run Applet Viewer

面向对象技术Java


9 2 applet3

9.2 Applet程序开发步骤

运行结果

面向对象技术Java


9 2 applet4

9.2 Applet程序开发步骤_归纳

(1) 编译Applet

javac JavaWorld.java

(2) 创建HTML文件(JavaWorld.html)

(3) 浏览JavaWorld.html

• Appletviewer JavaWorld.html

• 浏览器(Browser)

<html>

<title> java World! Appplet<title>

<applet code="JavaWorld.class“ width=300 height=200>

</applet>

<html>

面向对象技术Java


9 3 how to write applet class method

9.3 How to write Applet_Class、Method

(1) Applet类是所有Applet应用的基类。所有小应用程序都要继承java.applet.Applet类。该类由Sun公司事先定义好了.每个小应用都有一个public类型的主程序类

import java.applet.*;

public class MyApplet extends Applet

{ …}

(2) Applet的主要方法

public Applet()//构造方法

public boolean isActive() //是否处于活动状态

public URL getDoucmentBase()//Applet运行目录URL地址

面向对象技术Java


9 3 how to write applet class method1

9.3 How to write Applet_Class、Method

public URL getCodeBase()//得到代码的URL地址

public void showStatus(String msg)//显示状态

public getImage(URL url)//装入图象

public void play(URL url)//播放音频剪辑

public void destroy()//撤销Applet,释放资源

面向对象技术Java


9 3 how to write applet class method2

9.3 How to write Applet_Class、Method

init()方法

对加载的applet进行初始化

start()方法

在初始化后,自动调用start()方法

离开网页后返回,系统再执行一遍start()

stop()方法

用户离开网页时调用

destroy()方法

关闭Applet,释放资源

面向对象技术Java


Java object oriental technology java

http://someLocation/file.html

1. Browser loads URL

<Html>

<Applet code= ….>

</Applet>

2. Browser loads

HTML document

3. Browser loads

applet classes

Applet class

http://someLocation/file.html

Location:

4. Browser

run applet

Loading...

面向对象技术Java


9 3 write html embeded with applet

9.3 Write Html Embeded with Applet

Applet和HTML

(1) CODE标记

声明Applet应用的class文件名

CODE=“TestApplet.class”

(2) CODEBASE标记

指定Applet代码的URL地址

CODEBASE=“www.sun.com/Applet”

(3) ALT标志

指定替代文本信息,如果找不到代码,则显示它

ALT=“Java Not Support”

面向对象技术Java


9 3 write html embeded with applet1

9.3 Write Html Embeded with Applet

(4) ALIGN标记

Applet窗口在HTML文档窗口中的位置,ALIGN的值可以是MIDDLE、TOP和BOTTOM

(5) VSPACE、HSPACE标记

指定Applet窗口周围的空白

(6) NAME标记

指定加载的Applet名字,以便其它Applet引用

面向对象技术Java


9 4 applet multimedia

9.4 Applet的应用_Multimedia

利用Applet显示图像

功能:支持两种主要的图像格式:GIF、JPEG。

方法:Applet类提供了一个重要的方法:

(1)获得一个用于显示在屏幕上的Image对象的引用:

public Image getImage(URL url,String name);

(2)显示图像:

public boolean drawImage(Image img,int x,int y, ImageObserver observer);

注:

由于Applet类已经实现了ImageObserver接口,因此它可以作为加载图像时的图像观察器,即将this作为最后一个参数传递给drawImage()便可将Applet对象传递过去。

面向对象技术Java


9 4 applet multimedia1

9.4 Applet的应用_Multimedia

例:利用Applet显示图像

import java.awt.*;

import java.applet.*;

public class ShowImage extends Applet

{Image picture;

public void init()

{

picture=getImage(getCodeBase(),"Image.gif");

}

public void paint(Graphics g)

{

g.drawImage(picture,0,0,this);

}

}

面向对象技术Java


9 4 applet multimedia2

9.4 Applet的应用_Multimedia

Displaying Images :

面向对象技术Java


9 4 applet multimedia3

9.4 Applet的应用_Multimedia

Play Sound:

  • 功能:可以播放..au、.aiff、.wav、.midi、.rfm格式的音频。

  • 方法:

  • (1)获得一个用于播放的音频对象(AudioClip类型对象):

  • getAudioClip(Url url,String name);

    (2)处理声音文件:

  • play() 播放声音文件name;

  • loop() 循环播放name;

  • stop() 停止播放name。

面向对象技术Java


9 4 applet multimedia4

9.4 Applet的应用_Multimedia

Example: Play Sound.

import java.awt.*;

import java.applet.*;

public class Sound extends Applet

{

public void paint(Graphics g)

{

AudioClip audioClip=getAudioClip(getCodeBase(),"Sample.AU");

//也可以是WAV声音文件

g.drawString("Sound Demo!",10,20);

audioClip.loop(); //循环播放

}

}

面向对象技术Java


9 4 applet multimedia5

9.4 Applet的应用_Multimedia

如何利用Applet播放“铃”声(ringin.wav)?

import java.awt.*;

import java.applet.*;

public class Sound extends Applet

{

public void paint(Graphics g)

{

AudioClip audioClip=getAudioClip(getCodeBase(),“ringin.wav");

//也可以是WAV声音文件

g.drawString("Sound Demo!",10,20);

audioClip.loop(); //循环播放

}

}

面向对象技术Java


9 5 applet

9.5 Applet间的通信

Applet之间的通信

同一HTML页中的多个Applet利用其名字来区分彼此,并能相互通信。一个Applet可通过下面的方法得到其它Applet的引用:

AppletContext ac=this.getAppletContext

Applet applet=ac.getApplet(“Applet1”)

其中Applet在HTML文件中用如下方式命名:

<Applet code=“Applet.class” name=“Applet1”width=300 height=300>

</Applet>

面向对象技术Java


9 5 applet1

9.5 Applet间的通信

Applet之间通信示例

面向对象技术Java


Java object oriental technology java

Applet通信示例的html文件

<html>

<head>

<meta http-equiv="Content-Type" content="text/html; harset=GBK">

<title>HTML Test Page</title>

</head>

<body>

<applet codebase = ".“ code = "appletproj.Applet1.class"

name = "Applet1" width = "400" height = "300" hspace= "0"

vspace = "0" align = "top">

</applet>

<hr>

<applet codebase = "." code = "appletproj.Applet2.class"

name = "Applet2" width= "400" height= "300" hspace= "0"

vspace = "0" align = "top">

</applet>

</body>

</html>

面向对象技术Java


9 5 applet2

9.5 Applet间的通信

Applet之间通信示例关键代码

Applet1:

AppletContext ac=this.getAppletContext();

Applet appletColor=ac.getApplet("Applet2");

appletColor.setBackground(Color.red)

Applet2:

AppletContext ac=this.getAppletContext();

Applet appletControl=ac.getApplet("Applet1");

TextField textField=(TextField)appletControl.getComponent(3);

textField.setText(textField1.getText());

面向对象技术Java


Applet

利用浏览器浏览Applet

(1)前述主要使用AppletViewer浏览Applet。

(2)若使用浏览器浏览Applet须安装Web服务器,并可通过Java控制台可查看Applet的运行情况,Java控制台可在Internet Explore的工具-“Internet选项”的对话框中设置是否启动。

面向对象技术Java


Java object oriental technology java

小结

本次课介绍了开发小应用程序(Applet)的步骤,Applet的结构、Applet的安全问题以及如何编写实现网页动画、声音播放的Applet程序。

面向对象技术Java


Java object oriental technology java

思考题

(1)所有小应用程序都是哪个类的子类?

(2)一般来说,Applet的start()方法在什么时候被调用?

(3)Applet使用哪个方法刷新其窗口画面?

(4)如何在Applet中显示图像?

(5)如何在Applet中播放声音?

面向对象技术Java


Java object oriental technology java

谢 谢!

面向对象技术Java


  • Login