如何把 java applet 转化为java application

转载 2013年12月02日 18:42:57

转载自:http://blog.csdn.net/songhhwd01/article/details/4248491


前几天冯姐和我说,由于工作需要,要几个java 的小游戏程序,我就上网上google 了一下,发现网上是由很多的java小游戏程序,但写的好的,运行效果不错的基本上的都是java applet,必须得借助浏览器来运行,很是不方便,当时我就想,给它们改成java application,那不就方便多了!


  想法出来以后,就开始想想这个方法可不可行,当时我觉得肯定可行,因为不管是java applet,还是java application,最后无非都是编译成.class文件,前者是被浏览器内嵌执行,后者是直接在虚拟机上执行,况且我以前做过一些j2me的东西,当时用J2se编译出来的.class问价都能在j2me的编译器上执行,这个肯定也能实现。

   想法也可行,下一步技术着手开始实现了,这里有个建议,就是学程序的时候,一定要学得深一些,就是要知其所以然,要是对java applet 和 java application的运行机制都足够深的话,其实转化起来也不难,程序无非都有一个入口函数,顺着入口函数顺藤摸瓜,就会对程序的运行流程非常清晰,java applet的入口函数是init(),java application的是main(),那直接在java applet 里添加一个main()函数,调用init()不就完了吗,至于init()方法的流程是什么样的,我们也无需知道,这就和做车是一样一样的,举个例子,加入你想从北京到南京,但是你不知道路怎么走,你只知道从北京到天津,天津到南京怎么走,这时候该怎么办呢?上车呗,上从北京到天津的车,到了天津在坐天津到南京的车不就完了吗!就是转了一个弯。所以我这么改,
   
   在applet文件里添加:
   public static void main(String[] args){
     init();
}

对吗?
肯定不对,static 方法怎么可以调用非static 方法呢,接着又会想,那我New 一个实例以后再调用不就完了吗,假如applet文件名是Pintu.java,就这么写:
 public static void main(String[] args){
     Pintu pintu = new Pintu();
     pintu.init();
}


肯定也不对,
好了不卖关子了,直接说原理:
applet显示的时候必须要有一个背景(专业点的话可能是容器),在用浏览器执行的时候,它是显示在浏览器上的,当你把applet 转化为application的时候,浏览器这个容器没了,你必须给它再准备个容器,这里可以用JFrame当容器来显示applet,代码如下:
public static void main(String[] args){
 pintu applet = new pintu();
   JFrame frame = new JFrame("PinTu");
   frame.addWindowListener(new WindowAdapter() {
     public void windowClosing(WindowEvent e){
       System.exit(0);
     }
   });
   frame.getContentPane().add(
     applet, BorderLayout.CENTER);
   frame.setSize(650,520);
   applet.init();
   applet.start();
   frame.setVisible(true);
   
}

以前的applet文件里的其他内容一点也不用改,如果你用的是MyEclipse的集成开发环境,这时候该文件既可以当applet 运行,又可以当application运行,炫吧!

JAVA应用程序转换为Applet

本文是在学习中的总结,欢迎转载但请注明出处:http://blog.csdn.net/pistolove/article/details/41673295 将一个图形的JAVA应用程序转换为能够嵌入在...
  • pistolove
  • pistolove
  • 2014年12月02日 08:06
  • 1826

Java基础——GUI编程和Applet

33、GUI 概述 GUI(Graphical User interface)图形用户接口 用图形的方式,来显示计算机操作的界面,这样更方便,更直观 CLI(Command Line User Int...
  • dyonline2012
  • dyonline2012
  • 2013年07月14日 20:09
  • 1138

Java Applet 的运行原理

一、Java Applet的运行原理和生命周期          1.Applet被嵌入到HTML页面中,并由applet的容器(appletviewer或者Web浏览器)执行.       ...
  • z931284151
  • z931284151
  • 2015年10月13日 20:47
  • 972

Java Applet使用简记

Java Applet使用简记
  • ppdyhappy
  • ppdyhappy
  • 2016年09月27日 16:42
  • 948

Java核心编程十四:Applet与Web

1 Applet基础 1.1 Applet简介 Applet是一种将Java程序,通常为UI程序加载进web浏览器,在用户的浏览器中执行的一套转换机制。因而HTML页面中必须支持相关的标签,告诉浏览器...
  • zzulp
  • zzulp
  • 2013年12月29日 20:48
  • 1663

java applet 一个简单的例子(applet+html)

java applet是一个类,其层次结构如下图:  类 JApplet  java.lang.Object    java.awt.Component        java.awt.Con...
  • caomiao2006
  • caomiao2006
  • 2013年12月24日 21:02
  • 16939

主题研究:JAVA applet 和 ActiveX 的区别

由于项目需要在B/S 系统的B端强制做了一个 本地的Java application 程序, Java application程序通过web socket 或者Ajax 直接与浏览器进行通讯。 ...
  • liu_jie_1
  • liu_jie_1
  • 2017年05月28日 19:08
  • 608

Java Applet基础讲解

applet是一种Java程序。它一般运行在支持Java的Web浏览器内。因为它有完整的Java API支持,所以applet是一个全功能的Java应用程序。 如下所示是独立的Java应用程序和app...
  • u011225629
  • u011225629
  • 2015年09月11日 09:26
  • 1546

Eclipse编写和调试Applet程序,调试的时候Eclipse会自动调用Java "小程序查看程序",而不用嵌入到网页中查看运行效果。

Java Applet 是用Java 语言编写的一些小应用程序,这些程序是直接嵌入到网页中,这里采用Eclipse编写和调试Applet程序,调试的时候Eclipse会自动调用Java "小程序查看程...
  • wzwdcld
  • wzwdcld
  • 2014年05月22日 01:20
  • 1379

在浏览器中运行java applet

最近在看java applet,在eclipse中可以正常运行,于是想试试在浏览器中运行。但途中遇到很多问题,网上很多解答也不全面,于是想把自己的解决过程记录下来。   【1】首先,编写的applet...
  • zqxf123456789
  • zqxf123456789
  • 2016年03月24日 14:21
  • 11516
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:如何把 java applet 转化为java application
举报原因:
原因补充:

(最多只允许输入30个字)