Java application和applet区别
2013-02-05 20:38:35 来源:开发学院 下面哪一项不是Java application和applet的不同点?
A、applet中不再需要main()方法
B、Java applet有Web browser执行
C、执行方式不同
D、applet由若干个类构成
答案是:D
以前在学习java的时候听说过这个东西,只是知道这个东西不在运用了,不过这个东西到底是什么不知道,今天看到这样的一个问题,我开始研究了一下这个applet。下面是在网上搜集到的信息:
===================================================
1、applet一般用于B/S页面上作为插件式的开发,而application主要是桌面应用程序的开发,application是不能用Jsp加载的
2、Application和Java Applet的区别。 Java语言是一种半编译半解释的语言。Java的用户程序分为两类:Java Application和Java Applet。这两类程序在组成结构和执行机制上都有一定的差异 ,主要体现在以下几方面:
(1)运行方式不同。
Java Application是完整的程序,可以独立运行 ;Java Applet程序不能单独运行,它必须嵌入到用HTML语言编写的Web页面中,通过与Java兼容的浏览器来控制执行。
(2)运行工具不同。
Java Application程序被编译以后,用普通的Java解释器就可以使其边解释边执行,而Java Applet必须通过网络浏览器或者Applet观察器才能执行。
(3)程序结构不同。
每个Java Application程序必定含有一个并且只有一个main方法,程序执行时,首先寻找main方法,并以此为入口点开始运行。含有main方法的那个类,常被称为主类,也就是 说,Java Application程序都含有一个主类。而Applet程序则没有含main方法的主类,这也正是 Applet程序不能独立运行的原因。尽管Applet没有含main方法的主类,但Applet一定有一个从 java.applet.Applet派生的类,它是由Java系统提供的。
(4)受到的限制不同。
Java Application 程序可以设计成能进行各种操作的程序,包括读/写文件的操作,但是 Java Applet 对站点的磁盘文件既不能进行读操作,也不能进行写操作。然而,由于Applet的引入,使Web页面具有动态多媒体效果和可交互性能,这使由名为超文本、实为纯文本的HTML语言编写成的Web页面真正具有了超文本功能,不但可以显示文本信息,而且还可以有各种图片效果和动态图形效果,从而使页面显 得生动美丽;另外,Applet使Web页面增加了按钮等功能,从而增加了交互性。
====================================
再看一条:
用记事本来写一个被人熟知HelloWWW.java(这是一个Application程序)程序,代码如下:
public class HelloWWW
{
public static void main(String args[])
{
System.out.println("Hello Wide Word Web!"); //输出 Hello Wide Word Web!
}
}
HelloWWW程序中,首先用保留字class来声明一个新的类,其类名为HelloWWW,它是一个公共类(public)。整个类定义由大括号{}括起来。在该类中定义了一个main()方法,其中public表示访问权限,指明所有的类都可以使用这一方法;static指明该方法是一个类方法,它可以通过类名直接调用;void则指明main()方法不返回任何值。
对于一个应用程序来说,main()方法是必需的,而且必须按照如上的格式来定义。Jave解释器在没有生成任何实例的情况下,以main()作为入口来执行程序。Jave程序中可以定义多个类,每个类中可以定义多个方法,但是最多只能有一个公共类,main()方法也只能有一个,作为程序的入口。main()方法定义中,括号()中的Stringargs[]是传递给main()方法的参数,参数名为args,它是类String的一个实例,参数可以为0个或多个,每个参数用“类名参数名”来指定,多个参数间用逗号分隔。在main()方法的实现(大括号中),只有一条语句:System.out.println("Hello Wide Word Web!");它用来实现字符串的输出,这条语句实现与C语言中的printf语句和C++中cout<<语句相同的功能。另外,//后的内容为注释。
现在我们可以运行该程序。注意HelloWWW.java的文件中,文件名应和类名相同,因为Java解释器要求公共类必须放在与其同名的文件中。可以用OldJavac进行编译,然后用OldJava就可以查看结果,方法如下:
现在假设你的JDK安装时的存放路径是:C:JDK1.3.1,而HelloWWW.java存在C:JavaDemoHelloWWW.java,现在针对这个假设来编译一下HelloWWW.java。现在用以下方法就可以实现编译和查看结果。
这样就编译完了,你可以紧接着看,用在DOS命令符下输入:C:>OldJava HelloWWW 回车,你看到了什么,屏幕上是不是显示Hello Wide Word Web!,赶快动手试试吧。
现在看另外一个小例子Hello.java(这是一个Applet程序):
import java.awt.*;
import java.applet.*;
public class Hello extends Applet
{
public void paint(Graphics g)
{
g.setColor(Color.red);
g.setFont(new Font("Helvetica", Font.PLAIN, 24));
g.drawString("Hello Wide Word Web", 10, 100);
}
}
这是一个简单的Applet(小应用程序)。程序中,首先用import语句输入java.awr和java.applet下所有的包,使得该程序可能使用这些包中所定义的类,它类似于C中的#include语句。然后声明一个公共类Hello,用extends指明它是Applet的子类。在类中,我们重写父类Applet的paint()方法,其中参数g为Graphics类,它表明当前作画的上下文。在paint()方法中,调用g的方法drawString(),在坐标(10,100)处输出字符串""Hello Wide Word Web",其中坐标是用象素点来表示的。
这个程序中没有实现main()方法,这是Applet(Hello.java)与应用程序Application(HelloWWW.java)的区别之一。现在来运行该程序:
C:>Path=c:JDK1.3.1Bin
C:>cd c:JavaDemo
C:>Javac Hello.java
得到字节码文件Hello.class。由于Applet中没有main()方法作为Java解释器的入口,我们必须编写HTML文件,把该Applet嵌入其中,然后用appletviewer来运行,或在支持Java的浏览器上运行。这个HTML文件例子里面有(Hello.htm),就不再阐述。其中要说明的是用<applet>标记来启动Hello,code指明字节码所在的文件,width和height指明applet所占的大小。
现在用Appletviewer来看看结果:输入C:>appletviewer Hello.htm
这时屏幕上弹出一个窗口,其中显示Hello Wide Word Web!,显示结果如图Hello.jpg所示:
从上述例子中可以看出,Java程序是由类构成的,对于一个应用程序来说,必须有一个类中定义main()方法,而对applet来说,它必须作为Applet的一个子类。在类的定义中,应包含类变量的声明和类中方法的实现。Java在基本数据类型、运算符、表达式、控制语句等方面与C、C++基本上是相同的,但它同时也增加了一些新的内容。
Tags:Java application applet
编辑录入:爽爽 [复制链接] [打 印]更多精彩
赞助商链接