CTOCIO IT专家网

天极传媒 比特网 | 天极网 | IT专家网 | IT商网 | 52PK游戏网 | 手机天极 | IT分众 |
IT专家网搜索

您现在的位置: IT专家网 > Web服务子站 > Java技术

Applet与Application合并

作者: 佚名,  出处:IT专家网论坛, 责任编辑: 包春林, 
2008-06-06 04:00
  Java是一种建立分布应用程序的技术。它是网络编程的最优秀工具。使Internet的应用从通讯工具扩展到能够运行成熟应用程序的网络。

  Java程序有两种类型:Applet和Application。简单的讲,Applet就是嵌入Web文档的程序,而Application则是所有其它类型的程序。

  就Java而言,Applet与Application的大小和复杂性都没有限制,但是因为Applet主要是用于网络通讯,由于通讯速度有限,下载时间较长,因而Applet一般来说规模较小,而对于Application则无此顾虑。

  Applet与Application之间的技术差别来源于其运行环境的差别。Applet需要来自浏览器的大量信息:浏览器客户机的位置和大小、嵌入主HTML文档的参数、初始化过程(init)、启动过程(start)、停止过程(stop)、终止过程(destory)、绘图过程(paint)等等,而Application则相对要简单得多,它来自外部世界的唯一输入就是命令行参数。

  对于Applet必须做为java.applet.Applet的子类,而Application则必须有一个公共的方法main()。其次,两者的主线程是不同的,Applet是由方法init()来对applet进行初始化的,而Application则由方法main()来开始运行程序的。一般地,Java的Applet和Application是完全遵照以上的原则进行编程的,但是,我们可以运用技巧写出即是Applet又是Application的程序来。这样,即可以使我们更进一步了解Java的内部结构又可以使同一程序运行于不同的运行环境、还可以提高研究Java的兴趣。

  例程如下:

  

      import java.applet.*;

  import java.awt.*;

  import java.awt.event.*;

  public class Example extends Applet

  implements ActionListener{ // #1

  public static void main(String[] args){

  Frame win=new Frame(?xample");

  Example example=new Example();

  win.add(?enter", example);

  example.init(); // #2

  win.setSize(600,360);

  win.setVisible(true);

  }

  public void init(){ // #3

  Button button;

  Label label;

  button=new Button(" OK "):

  button.setBounds(280,200,100,20);

  button.addActionListener(this);

  label=new Label();

  label.setBounds(260,100,200,20);

  add(button);

  add(label);

  }

  public void actionPerformed(ActionEvent e){

  Object source=e.getSource();

  if(source==button){

  label.setText(" It is a example !");

  }

  }

  }

  在程序中的#1处,必须让程序继承java.applet.Applet类这是做为Applet的必要条件,在#2处,需要生成本类的一个实例example,通过此实例来调用init()方法,#3是init()方法。

  如果把该程序看作Applet,它只是覆盖了init()方法和actionPerformed()方法来响应Button事件。如果作为Application,则由main()方法开始,先生成程序本身的实例将程序加入窗口,然后调用init()方法。编译此程序,即可以在提示下作为Application直接运行,又可以作为Applet送入任何浏览器。

网友评论

笔名 
请您注意:遵守国家有关法律、法规,尊重网上道德,承担一切因您的行为而直接或间接引起的法律责任。    IT专家网友拥有管理笔名和留言的一切权利。
  • 周排行榜
  • 月排行榜

邮件订阅

       
天极服务 | 关于我们 | 网站律师 | 加入我们 | 联系我们 | 广告业务 | 友情链接 | 我要挑错
All Rights Reserved, Copyright 2004-2008, Ctocio.com.cn
渝ICP证B2-20030003号 如有意见请与我们联系 powered by 天极内容管理平台CMS4i