Java程序的编程阶段
1、Java的加载与执行
*Java程序的运行包括两个非常重要的阶段
-编译阶段
-运行阶段
*编译阶段
编译阶段主要的任务是检查Java源程序是否符合Java语法
符合Java语法则能够生成正常的字节码文件(.class)
不符合Java语法规则则无法生成字节码文件
字节码文件不是单纯的二进制,这种文件无法在操作系统中直接执行。
javac.exe(Java编译程序,在JDK中自带)
怎么使用?在哪用?
在DOS命令窗口中使用。
**javac的使用规则:**javac java源文件的路径
class文件是最终要执行的文件,所以class文件生成之后,java源文件删除也不影响java程序执行。
*编译结束后,可以将class文件拷贝到其他操作系统当中运行。【跨平台性】
*运行阶段
JDK安装之后,除了自带的javac.exe之外,还有另外一个工具,叫做java.exe,其主要负责运行阶段。
java.exe在哪里用?怎么用?
-在DOS窗口使用
-使用方法 输入 java 类名
java.exe命令会启动Java虚拟机(JVM),JVM会启动类加载器ClassLoader
ClassLoader会去硬盘上搜索A.class文件,找到该文件则将该字节码文件装载到JVM中。
JVM将A.class字节码文件解释成二进制。
然后操作系统执行二进制和底层硬件平台进行交互。
2、JDK、JRE、JVM的关系
JDK:开发者提供的开发工具箱,是给程序开发者用的,它包括完整的jre、Java运行环境,还包括了其他供开发者使用的工具包。
JRE: 运行时所必须的包依赖的环境都在jre中
JVM: 当我们运行一个程序时,JVM负责将字节码转换为特定机器代码,JVM提供了内存管理、垃圾回收和安全机制等,他独立于硬件和操作系统,正是java程序可以一次编写多处执行的原因
JDK目录的介绍:
JDK/bin: 该目录下存放很多命令,例如javac.exe和java.exe
javac.exe负责编译
java.exe负责运行
开发HelloWorld程序
//public表示一个公开的
//class表示一个类
//HelloWorld表示一个类名
public class HelloWorld{
//表示定义一个公开的类,起名HelloWorld
//类体中不允许直接编写Java语句(除声明变量之外)
/*
public表示公开的
static表示静态的
void表示空
main表示方法名是main
(String[] args)是一个main方法的形式参数列表
需要记住的是:以下的方法是一个程序的主方法。是程序的执行入口,是一个固定编写方式。
*/
public static void main (String[] args){
//表示定义一个公开的静态的主方法
//方法体
//方法体
//Java语句以";"终止,分号必须是半角分号
System.out.println("Hello World!");//向控制台输出语句
}
}
将HelloWorld.java源程序通过javac工具编译:
首先需要解决的问题是:javac命令是否可用
打开DOS命令窗口,直接输入javac
*重要
PATH环境变量的配置
*注意:path环境变量和java语言没有关系,path环境变量是属于windows操作系统的一个知识点。path环境变量是专门给windows操作系统指路的。·