Applet加载Java应用程序

<script type="text/javascript"> google_ad_client = "pub-8800625213955058"; /* 336x280, 创建于 07-11-21 */ google_ad_slot = "0989131976"; google_ad_width = 336; google_ad_height = 280; // </script> <script type="text/javascript" src="http://pagead2.googlesyndication.com/pagead/show_ads.js"> </script>  如何编写小应用程序(Applet)并把其嵌入到网页中去的问题在很多关于Java的书中均有讨论。在这里我们不再重复此类问题,而是讨论如何将一个小应用程序用做构件,并能让自己编写的应用程序正常地加载并运行Java小应用程序。

  什么是小应用程序(Applet)

  “Applet”(小应用程序)通常被认为是能嵌入互联网网页的有安全防护的应用程序。应该说这样的定义并不是很精确。下面让我们先来看看小应用程序的内涵。

  图1 此图显示的是“SimpleApplet”作为独立应用程序运行的情景

  小应用程序的基础类是java.applet.Applet类,它扩充自java.awt.Panel类,所以可以说小应用程序是一些面板(Panel)。而java.awt.Panel类又扩充自java.awt.Container类,所以也可以认为小应用程序是一些容器(Container)。再往下看,你会发现java.awt.Container 类扩充自java.awt.Component类,所以又可以说小应用程序(Applet)是一些构件(Component),这也就意味着小应用程序有能力处理各种事件,并能够被添加到各种容器中。

  让小应用程序作为构件使用

  在上面的讨论中,我们已明确了小应用程序Applet是构件(Container),这就意味着可采用适当的形式将小应用程序Applet嵌入到容器中去。

  图2 用其他类将小应用程序加载入应用程序运行时的情景

  1、用main()方法加载、运行小应用程序

  要让小应用程序嵌入其他程序中,可按普通应用程序来使用,实现的关键在于:在main()方法里完成小应用程序的实例化,然后调用该小应用程序的init()和start()方法,并为该小应用程序创建一个新的框架,并把小应用程序纳入其中。源程序清单如下:

SimpleApplet.java



import java.applet.*; 

import java.awt.*;



public class SimpleApplet extends Applet{ 

     public static void main(String[] args){ 

        Frame f=new Frame("A frame!");

        SimpleApplet h=new SimpleApplet(); 

        h.init();

        h.start(); 

        f.add("Center",h);

        f.pack();

        f.show();

     } 

     public void init(){ 

        

        add(new Label("I am a Component"));

     } 

} 


  2、用其他类加载小应用程序

  小应用程序不一定非要作为应用程序的首要驱动者。如果有必要,其他类也能够加载、安装并运行一些小应用程序。下例将创建一框架(Frame),两次加载一个小应用程序。源程序清单分别如下:

SimpleApplet.java



import java.applet.*;

import java.awt.*;



        public class SimpleApplet1 extends Applet{ 

                public void init(){ 

                        add(new Label("I am a Component"));

                } 

        } 


Multi.java



import java.applet.*; 

import java.awt.*; 

        public class Multi extends Frame{ 

                public static void main(String[] args){ 

                        Multi ma=new Multi("frame"); 

                        

                        ma.setSize(new Dimension(500,300));

                        //ma.resize(200,200); 

                        ma.setLayout(new GridLayout(2,1)); 

                        ma.launchapplet(); 

                        ma.launchapplet(); 

                        ma.show();

                } 

                public Multi(String s){ 

                        super(s);

                } 

                void launchapplet(){ 

                        Applet theApplet=new SimpleApplet(); 

                        add(theApplet); 

                        theApplet.init(); 

                        theApplet.start();

                } 

} 

  说明:运行时,可先用JavaC命令编译“SimpleApplet.java",然后将编译后所得的“SimpleApplet.class"拷贝至“Multi.java"所在的目录下。最后用JavaC命令编译“Multi.java”,并用Java命令运行“Multi”即可。

  通过上面的介绍,我们可以得出这样一个结论:小应用程序(Applet)不仅仅只是用于嵌入互联网网页的有安全防护的应用程序,小应用程序(Applet)也是可以作为构件加入到其他的应用程序中去。我们既可以在main()方法里完成小应用程序的实例化,也可在其他类中加载并运行一些小应用程序。这样在很多应用程序的设计过程中,如果我们能把别处已有的对象拿来直接插入其中加以使用,那将是多么有意义的事情!
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值