对于任何一门语言, 要想达到精通的水平, 研究它的执行原理 (或者叫底层机制) 不失为一种良好的方式. 在本篇文章中, 将重点研究 java 源代码的执行原理, 即从程序员编写 JAVA 源代码, 到最终形成产品, 在整个过程中, 都经历了什么? 每一步又是怎么执行的? 执行原理又是什么?.....
当然, 本篇文章的粒度可能稍微侧重于宏观方面, 更细粒度的技术分析, 需要在接下来的该系列文章中与大家分享....
一 编写 java 源程序
java 源文件: 指存储 java 源码的文件;
当前比较主流的 JAVA IDE?
- (1)Intellij IDEA(首推荐)
- (2)Eclipse
先来看看如下代码:
- //MyTest 被 public 修饰, 故存储该 java 源码的文件名为 MyTest
- public class MyTest {
- public static void main(String[] args){
- System.out.println("Test Java execute process.");
- }
- }
- // 由于 MyTest 被 public 修饰了, 故 Class A 不能用 public 修饰
- class A{
- }
- // 由于 MyTest 被 public 修饰了, 故 Class B 不能用 public 修饰
- class B{
- }
(1)java 源文件名就是该源文件中 public 类的名称
(2)一个 java 源文件可以包含多个类, 但只允许一个类为 public
二 编译 java 源代码
当 java 源程序编码结束后, 就需要编译器编译, 安装好 jdk 后, 我们打开 jdk 目录, 有两个. exe 文件,
即 javac.exe(编译源代码, 即. java 文件)和 java.exe(执行字节码, 即. class 文件)
1. 切换到 MyTest.java 文件夹
2.javac.exe 编译 MyTest.java
编译后, 发现 e:Blogs 目录多了以 class 为后缀的文件: A.class,B.class 和 MyTest.class
Tip: 当 javac.exe 编译 java 源代码时, java 源代码有几个类, 就会编译成一个对应的字节码文件(.class 文件),
其中, 字节码文件的文件名就是每个类的类名. 需要注意的是, 类即使不在源文件中定义, 但被源文件引用,
编译后, 也会编程相应的字节码文件, 如类 A 引用类 C, 但类 C 不定义在类 A 的源文件中, 编译后, 类 C 也被编
译成对应的字节码文件 C.class
三 执行 java 源文件
执行 java 源文件, 用 java.exe 执行即可
来源: http://www.jianshu.com/p/e6e2d06cb91f