Applet基础

Applet是一种Java程序。它一般运行在支持Java的Web浏览器内。因为它有完整的Java AP支持,所以Applet是一个全功能的Java应用程序。它与独立的Java应用程序之间有着重要的不同,如下:

  1. Java 中的Applet类继承了java.applet.Applet类。
  2. Applet类没有定义main(),所以一个 Applet 程序不会调用main()方法。
  3. Applet 被设计为嵌入在一个HTML页面。
  4. 当用户浏览包含Applet的HTML 页面,Applet的代码就被下载到用户的机器上。
  5. 要查看一个Applet需要JVM。JVM 可以是Web浏览器的一个插件,或一个独立的运行时环境。
  6. 用户机器上的JVM创建一个 Applet 类的实例,并调用Applet生命周期过程中的各种方法。
  7. Applet有Web浏览器强制执行的严格的安全规则,Applet的安全机制被称为沙箱安全。
  8. Applet需要的其他类可以用Java归档(JAR)文件的形式下载下来。

同时Applet是有着生命周期的,如下:

Applet 类中的四个方法给我们提供了一个框架,你可以在该框架上开发小程序。

    init(): 该方法的目的是为你的 Applet 提供所需的任何初始化。在 Applet 标记内的 param 标签被处理后调用该方法。

start(): 浏览器调用 init 方法后,该方法被自动调用。每当用户从其他页面返回到包含 Applet 的页面时,则调用该方法。

stop(): 当用户从包含 Applet 的页面移除的时候,该方法自动被调用。因此,可以在相同的 Applet 中反复调用该方法。

destroy(): 此方法仅当浏览器正常关闭时调用。因为Applet只有在HTML网页上有效,所以你不应该在用户离开包含 Applet 的页面后遗漏任何资源。

paint(): 该方法在start()方法之后立即被调用,或者在Applet需要重绘在浏览器的时候调用。paint()方法实际上继承于java.awt。

代码示例如下:

package com.applet.demo;

 

import java.applet.Applet;

import java.awt.Graphics;

   

/*

    * 必须继承Apllet

    */

public class HelloWorldApplet extends Applet {

 

        /**

         *

        */

        private static final long serialVersionUID = 1L;

       

        public void paint(Graphics graphics){

            graphics.drawString("Hello World!", 25, 50);

        }

 

}

代码运行效果如下:

    上面代码中import语句导入了java.applet.Applet和java.awt.Graphics这些类,如果没有import导入语句,那么,Java编译器将识别不了Applet和Graphics类

    Applet类:每一个 Applet 都是 java.applet.Applet 类的子类,基础的 Applet 类提供了供衍生类调用的方法,以此来得到浏览器上下文的信息和服务。

    这些方法可以做以下事情:

  1. 得到 Applet 的参数
  2. 得到包含 Applet 的 HTML 文件的网络位置
  3. 得到 Applet 类目录的网络位置
  4. 打印浏览器的状态信息
  5. 获取一张图片
  6. 获取一个音频片段
  7. 播放一个音频片段
  8. 调整Applet的大小

除此之外,Applet类还提供了一个接口,该接口供 Viewer 或浏览器来获取 Applet 的信息,并且来控Applet 的执行。

Viewer 可能是:

请求 Applet 作者、版本和版权的信息;

请求 Applet 识别的参数的描述;

初始化 Applet;

销毁 Applet;

开始执行 Applet;

结束执行 Applet;

Applet 类提供了对这些方法的默认实现,这些方法可以在需要的时候重写。

    上面"Hello,World"Applet都是按标准编写的。唯一被重写的方法是 paint 方法。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值