1、概述:{
1、java实现可移植性靠的是JVM,JVM就是一台虚拟的计算机,只要在不同的操作系统上植入不同版本的JVM,java程序就可以在各个平台上移植,做到“一次编写,处处运行”。
2、java中程序的执行步骤为:{
1、使用javac命令将一个*.java文件编译成*.class文件.
2、然后使用java命令可以执行一个*.class文件.
}
3、每次使用java命令执行一个*.class时,都会启动JVM,JVM通过classpath给出的路径加载所需要的类文件,可以通过set classpath 来设置类的加载令。
4、java程序主要分为两种,即java Application和java Applet程序,java Applet主要是在网页中嵌入java程序,基本上已经不再使用了,而Application是指有main方法的程序。
}
2、重点剖析:{
1、java运行机制:{
计算机高级语言类型主要有:“编译型”和“解释型”两种,java是这两种类型的集合。
具体流程:*.java源文件———————>(通过javac编译)——————>生成*.class文件——————>(加载到JVM平台上)————————>“java解释器” 负责将 “java虚拟机的代码” 在特定的平台上运行.
}
2、java虚拟机(JVM):{
1、JVM是在一台计算机上由软件或硬件“模拟的计算机”,即“一个虚拟的计算机”。
2、JVM负责读取并处理经编译过的、与平台无关的字节码*.class文件。
3、所用的*.class文件都是在JVM上运行的,即*.class文件只需认JVM,然后由JVM去适用各种操作系统,只要不同的操作系统安装上符合其类型的JVM即可。这好比一个“中国人(*.class文件)”想和“其他几个国家的人(各种不同的操作系统)”说话,需要相应的“翻译(JVM)”。
}
3、JDK的安装与配置:{
1、准备好JDK的安装文件:jdk-6u11-windows-i586-p.exe (JDK 1.6版本的update的第11次)
2、配置环境变量path
}
4、classpath属性:{
1、set classpath命令指定java类的执行路径:{
eg:假设在f:\test目录下,创建一个Hello.class文件,即:set classpath=f:\test
然后可以在另外一个目录下(譬如D盘下)执行java 运行命令。
}
2、classpath与JVM的关系:{
classpath主要指的是类的运行路径,实际上在执行java命令时,对于本地的操作系统来说,就意味着启动了一个JVM,那么JVM在运行时,需要通过classpath加载所需要的类,而默认情况下classpath是指向当前的目录(当前命令行窗口所在的目录)的,所以会从此目录下直接查找。
}
3、classpath属性只在java运行时起作用,而在java编译时,如果命令行所在的目录不是*.java所在的目录,则应该输入完整的路径名称。
}
}
3、java开发包中几个重要的目录:{
1、bin目录:存放着全部的开发工具:{
1、javac.exe:java程序的编辑器,可以完成对java程序的编译
2、java.exe:执行java程序的解释器,通常被人们称为java虚拟机
3、appletviewer.exe:模拟在浏览器下运行applet应用程序的效果。通常用于在没有浏览器的情况下运行与调试applet应用程序
4、jar.exe:用于创建与管理java归档文件
5、javadoc.exe:是API文档生成器
}
2、jre目录:存放着java运行的环境,包括“java虚拟机”、“类库”、“支持java程序运行的程序”
3、lib目录:存放着开发工具所需要的“附加的类库”和“支持文件”
4、include目录:存放着支持使用“java本机界面”、“java虚拟机工具界面”及“java 平台的其他功能进行本机代码编程的头文件”
5、demo目录:存放着一些“java程序的实例代码”,包括“使用swing”、"其他java基类"以及“java平台调试器体系结构的实例”
}