步骤
- 编写:将 Java 代码编写到扩展名为 .java 的文件中。
- 变异:通过 javac 命令对该 java 文件进行编译。
- 运行:通过 java 命令对生成的 class 文件进行运行。
编写
选择最简单的编辑器:记事本。
敲入代码
class Test{ }
将文件保存成Test.java,这个文件是存放java代码的文件,称为源文件。
编译
有了java源文件,通过编译器将其编译成JVM可以识别的字节码文件。
在该源文件目录下,通过javac编译工具对Test.java文件进行编译。
#去到源文件的保存位置
Macs-MacBook-Pro:~ mac$ cd /Users/mac/Desktop/
#使用javac进行源文件的编译
Macs-MacBook-Pro:Desktop mac$ javac Test.java
如果程序没有错误,没有任何提示,但在当前目录下会出现一个Test.class文件,该文件称为字节码文件,也是可以执行的java的程序。
微信公众号:JavaWeb架构师
运行
有了可执行的java程序(Test.class字节码文件)
通过运行工具java.exe对字节码文件进行执行。
出现提示:缺少一个名称为main的方法。
#使用java命令执行字节码
Macs-MacBook-Pro:Desktop mac$ java Test
#报错
错误: 在类 Test 中找不到 main 方法, 请将 main 方法定义为:
public static void main(String[] args)
否则 JavaFX 应用程序类必须扩展javafx.application.Application
Macs-MacBook-Pro:Desktop mac$
因为一个程序的执行需要一个起始点或者入口,所以在Test类中的加入public static void main(String[] args){ }
public class Test {
public static void main(String[] args) {
}
}
对修改后的Test.java源文件需要重新编译,生成新的class文件后,再进行执行。
发现没有编译失败,但也没有任何效果,因为并没有告诉JVM要帮我们做什么事情,也就是没有可以具体执行的语句。
# 编译
Macs-MacBook-Pro:Desktop mac$ javac Test.java
#执行
Macs-MacBook-Pro:Desktop mac$ java Test
Macs-MacBook-Pro:Desktop mac$
想要和JVM来个互动,只要在main方法中加入一句
System.out.println("Hello World");因为程序进行改动,所以再重新编译,运行即可。
public class Test {
public static void main(String[] args) {
System.out.println("Hello World");
}
}
结果:
Macs-MacBook-Pro:Desktop mac$ javac Test.java
Macs-MacBook-Pro:Desktop mac$ java Test
Hello World
Macs-MacBook-Pro:Desktop mac$
class文件与java文件的关系
一个源文件中可以有多个类。
public class Test {
public static void main(String[] args) {
System.out.println("Hello World");
}
}
//人类
class Person{ }
//动物类
class Animal{}
编译之后每个类出现一个.class文件(按类名)。
微信公众号:JavaWeb架构师
解释并执行的时候要区分.class文件
Macs-MacBook-Pro:Desktop mac$ java Test
Hello World
Macs-MacBook-Pro:Desktop mac$ java Person
错误: 在类 Person 中找不到 main 方法, 请将 main 方法定义为:
public static void main(String[] args)
否则 JavaFX 应用程序类必须扩展javafx.application.Application
Macs-MacBook-Pro:Desktop mac$
源文件出现public类的时候,源文件的名字必须和这个类的名一致
#我们先把Test.java 改成 Test2.java,然后编译
Macs-MacBook-Pro:Desktop mac$ javac Test2.java
Test2.java:1: 错误: 类Test是公共的, 应在名为 Test.java 的文件中声明
public class Test {
^
1 个错误
Macs-MacBook-Pro:Desktop mac$
一个源文件中最多一个用public修饰的类:public Test,或者没有(原因由上一条可以解释)。
说明
主方法:
一个java程序必须有且只能有一个main方法,这是Java程序的入口
public static void main(String[] args) {}
主类:
主类--->带有main方法的类
当主类是public的时候,主类名必须和源文件名(TEST.java)一致。不是public的话,可以不一致
其它
- 源码下载
关注下方公众号,回复:java_course.code
-
欢迎加入交流群:451826376
-
更多信息:www.itcourse.top
网友评论