一个完整的java程序示例

第一个java程序


package mypack;         //至关于一个目录

public class HelloWorld{

        public static void main(String[] args) {

                System.out.println("Hello World!");

        }

}

注:java

1.文件名必须和public修饰的类名一致,以.java做为文件后缀,若是定义的类不是public的,则文件名与类名能够不一样。code

2.一个.java文件中能够有多个class,可是只有一个public修饰的类。编译器

3.java源代码文件编译后,一个类对应生成一个.class文件。虚拟机

4.一个Java应用程序应该包含一个main()方法,并且其签名是固定的,它是应用程序的入口方法,能够定义在任意一个类中,不必定是public修饰的类。编译

编译:javac -d . HelloWorld.java

含有包的类,在编译的时候最好用上面的格式,-d指的是让该类生成的时候按照包结构去生成,“.”指的是在当前路径下生成。class

若是不用上面的的格式,也能够用 javac HelloWorld.java,但须要注意的是包结构就要由本身去创建,而后将生成的.class文件放到该目录下。效率

执行:java mypack.HelloWorld

将字节码文件交给java虚拟机去解释执行。二进制

须要注意的是:必须使用包名.类名去解释执行。程序

java的运行过程

编译:生成可执行文件(.class)方法

解释:解释器把源文件逐行解释,跨平台但效率不高。

在java中,先编译后解释,把.java文件编译成.class字节码文件:

Java源代码文件(.java文件)
Java编译器(javac)
Java字节码文件(.class文件,平台无关)
Java解释器(java),执行java字节码

Java是跨平台的语言,真正执行的不是二进制代码,而是字节码。

Java程序执行其实是在JVM(Java Virtual Machine,Java虚拟机)上解释执行的,Java是跨平台的,而JVM不是跨平台的,Java之因此可以作到跨平台,本质上是由于不一样的系统有不一样的JVM,JVM给java提供了环境。