在用Dos命令框运行java源程序之前,我们先了解一下Java的执行原理




dll编写 java java 编译dll_java执行db2命令


通过流程图可以看出其实java的执行可以分为两大步骤,第一是编译,这一过程就是调用的javac命令,编译成对应的.class文件。第二是解释执行,这一过程是调用的java命令,其实我理解的是调用了java里的jvm,即java虚拟机。具体这是个什么鬼东西,其实计算机把高级语言解析成机器码都会存在一个类似这样的中间件。在c#中,我知道先编译成CIL托管代码,然后Jit编译器在CLR(公共语言运行时)这样一个库下把托管代码解释成可执行文件.exe或者dll。现在我就把jvm看作是jit编译器。把要执行的代码翻译给计算机听,然后机器执行,大致也就是这么个道理。

下面开始编写程序:

public class HelloWorld
{
 public static void main(String args[])
 {
System.out.println("Hello World!");
 }
}

这个简单的HelloWorld程序是我用记事本写的,要注意把记事本的.txt文件扩展名改成.java 下面截图是用控制台执行的java程序,可以看到有HelloWorld输出。下面解释一下操作步骤。


dll编写 java java 编译dll_java 调用dll_02


dll编写 java java 编译dll_java获取文件后缀名_03


可以看到我输出Hello World!一共执行了三次命令,除了第一次命令之外,其他两次命令的执行都对应着java编译执行的两个步骤。首先,必须cd到我们写的HelloWorld.java文件的存放路径,我的是桌面,不然的话是找不到该文件的。第一行命令,用javac命令去编译java文件生成上面的HelloWorld.class文件。第二行,用java命令去执行.class文件。注意编译文件有后缀名,解释文件时不需要加后缀名。具体的原理上面已经解释过了,这里只是把操作步骤实现了,起到加深印象的效果。 后面的我要学习java的基本语法,但是我不打算详细的去记录,因为语法的相似性,CSharp有的东西java也会有,毕竟都是基于C++的面向对象高级语言。我只会记录一些需要刻意去区分的部分。拜拜。