本帖最后由 gooding300 于 2018-8-20 19:46 编辑


第一个JAVA应用程序

java既能够创建独立的桌面应用程序,还能创建小应用程序,嵌入网页执行,还能作为插件,通过别的JAVA应用程序通过反射加载执行,在网页执行时称为Java Applet,作为独立桌面应用程序执行时称为Java Application,作为插件被别的JAVA应用程序加载时有很多叫法,最主要叫它Java Plugin。


1.1 制作Java Application桌面应用程序

新建一个文本文件,命名为HelloWorld.java(这是一个很经典的东西\( ̄▽ ̄)/),你可以用最简单的记事本来编辑这个文本文件,也可以用Eclipse等集成开发环境来编写这个程序,只不过记事本相比Eclipse这样的集成开发环境来说还是太过于简单了,显然不适合开发大型应用程序,但是这里我们只需要用记事本就行了,Eclipse可能反而不方便,因为你必须创建项目,才能编辑源程序。

1.编写源程序

在记事本里写入如下内容:

  1. import java.io.*;
  2. //导入输入输出包里的全部类
  3. public class HelloWorld
  4. //定义一个名为HelloWorld的类
  5. {
  6.     public static void main(String args[])
  7.     //程序的入口函数
  8.     {
  9.         System.out.println("HelloWorld!");
  10.         //在标准输入输出流输出"HelloWorld!"
  11.     }
  12. }
复制代码

2.编译并运行

首先需要对Java源代码进行编译,使其成为Java虚拟机可以执行的中间源代码(Java字节码):

打开cmd转到你编写的源文件所在的目录(什么?不知道CMD怎么用?问度娘=w=),然后输入 javac HelloWorld.java 并回车。这时你将在同一目录得到一个名叫HelloWorld.class的Java字节码文件。然后执行 java HelloWorld ,这时你将在控制台看到输出:"HelloWorld!",这就是你第一个Java应用程序!

3.程序代码解析(不必深入理解)

第1行代码import是一个关键字,用来加载其他类供本程序使用,类似于C中的#include。

第3行代码定义了一个公共类HelloWorld的类头,注意在JAVA里,如果有一个类被定义成了公共类,那么包含此类的文件名字,必须是这个类的名字 + .java后缀,当然如果没有一个是公共的,则可以随便乱取名字。

第5~12行是公共类HelloWorld的类体,其中包含着一个入口函数。

第6~11行是这个程序的入口函数,入口函数必须是公共的、静态的、返回void的、名字为main的、且必须接受一个String类型的数组。

第9行调用System类的out静态属性的println方法,并传递"HelloWorld!"字符串,这时将在控制台输出HelloWorld!。


至于以//开头的类容则是注释,在编译时会自动屏蔽,所以只是让程序更好被人理解,没有实际用途。另外JAVA里还有一种以@开头的名为注解的玩意,这玩意可能影响程序的编译、运行,所以不能随意更改,要注意区别。

1.2 制作Java Applet小程序

Applet小程序一般运行在网页上提供类似flash的动态交互内容,它使用和Java Application同样的编译器进行编译,得到的字节码的格式与Java Application相同,只不过大多数不能作为独立应用程序运行(大多数没有独立应用程序初始化所需要的main静态函数),所以必须嵌入到html网页中,通过浏览器调用其定义的函数,来完成小程序的生命周期。

1.编写源程序

在记事本里写入如下内容:

  1. import java.applet.*;
  2. //applet应用程序需要的包
  3. import java.awt.*;
  4. //awt图形技术包
  5. public class HelloWorldApplet extends Applet
  6. {
  7.     public void paint(Graphics g)
  8.     {
  9.         g.setColor(Color.blue);
  10.         g.drawString("HelloWorld",10,20);
  11.     }
  12. }
复制代码

2.编译并运行:

和Java Application一样,首先需要对Java源代码进行编译。编译的步骤和Java Application一样,也就是说Applet和Application本质上字节码格式是相同的。

然后,你需要创建一个html文件,因为Applet需要在网页环境下运行(大多数时候)。在HelloWorldApplet.class所在文件夹下,新建一个文本文件命名为example.html,用文本编辑器打开它,输入:

  1. <HTML>
  2.         <BODY>
  3.             <Applet CODE="HelloWorldApplet.class" HEIGHT=200 WIDTH=300>
  4.         </APPLET>
  5.         </BODY>
  6. </HTML>
复制代码
然后保存,现在,你可以选择直接打开这个网页,或者做一些更高级的事情。首先,在HelloWorldApplet.class所在文件夹下,创建一个批处理文件,命名为run.bat。用文本编辑器打开并输入:
  1. @echo off
  2. @echo Java Applet小程序开始运行
  3. @appletviewer example.html
  4. @echo Java Applet小程序运行完成
  5. @Pause
复制代码

然后保存该文件,并运行。这时,你可以看见Applet以一个窗口的形式打开,并运行,避免调用庞大的浏览器,这在开发程序时十分有用。

3.程序代码解析(不必深入理解)

第1~3行代码import是两个关键字,用来加载其他类供本程序使用,类似于C中的#include。

第5行代码定义了一个公共类HelloWorldApplet的类头,并使其继承自Applet,所有Applet小程序的启动类都必须继承自Applet类。

第7行代码重载了父类中的一个名为paint的方法,父类中本来就有这个方法,可是子类为了实现特定的功能,而覆盖父类的方法,叫做方法重载。此方法的用途是让Applet执行绘图、更新图形界面、显示文本等功能。大多数Applet都应该重载此方法来给用户有好的客户端界面。

第9行代码调用了一个名为 g 的参数的 setColor 方法,并向 setColor 传递一个 Color 类的静态字段  blue,目的是告诉Applet绘图使用蓝颜色。

第10行代码则调用了名为 g 的参数的 drawString 方法,并传递 一个字符串类型的字面量 和两个 int类型的字面量。目的是告诉Applet在屏幕上打印一个内容为 HelloWorld ,X轴为 10 位置,Y轴为 20 位置 的字符串。