Java体系基本概念
JVM:Java虚拟机
JRE:(Java Runtime Environment)Java程序允许,测试,传输应用程序的环境和平台
包括 jvm ,java 核心类库和支持的文件,但不包含开发工具JDK:编译器,调试器
和一些相关的工具,仅仅只是一个环境。
JDK:(Java Development Kit)Java语言开发工具包,包含JRE,JDK包含的基本组件有
javac 编译器 将源代码编译成可执行程序
jar 打包器 将相关的类文件打包成一个文件
javadoc 文档生成器 从源码注释中提取成文档
jdb 调试器 调试应用程序和逻辑排查
appletviewer 小程序浏览器 一种执行html文件上的java小程序的java浏览器
javah 调用器 产生可以调用java过程的C过程,创建能被Java调用的C头文件
javap 反汇编器 显示编译类文件中的可访问功能和数据,同时显示代码含义
jconsole 监控器 java进行系统调试和监控的工具
SDK:(software Development Kit)软件开发工具包,一般都是一些软件工程师为特定的软件包、
软件框架、硬件平台、操作系统等建立应用软件时的开发工具的集合,JDK只是SDK的一个
子集,比如你下载了软件开发平台 eclipse-SDK-3.2.2-win32.zip(JDK),它本身里面是没有jdk的
但是只要开发java程序就必须使用jdk(javaee和javase)因此仅说SDK,那么它的含义太广,无法
指明是具体哪个开发工具,若加上代名词,如andorid SDK则表示Andorid开发工具包,如java SDK
则表示开发java应用程序的工具包,也就是 JDK ,JDK已经成为使用最广泛的Java SDK(Software development kit)
总结:
如果只想允许java程序,JRE就够了
如果想开发java程序,则需要JDK
如图:SDK 包含 JDK 包含 JRE 包含 JVM
版本
|
名称
|
发行日期
|
JDK 1.1.4
|
Sparkler(宝石)
|
1997-09-12
|
JDK 1.1.5
|
Pumpkin(南瓜)
|
1997-12-13
|
JDK 1.1.6
|
Abigail(阿比盖尔–女子名)
|
1998-04-24
|
JDK 1.1.7
|
Brutus(布鲁图–古罗马政治家和将军)
|
1998-09-28
|
JDK 1.1.8
|
Chelsea(切尔西–城市名)
|
1999-04-08
|
J2SE 1.2
|
Playground(运动场)
|
1998-12-04
|
J2SE 1.2.1
|
none(无)
|
1999-03-30
|
J2SE 1.2.2
|
Cricket(蟋蟀)
|
1999-07-08
|
J2SE 1.3
|
Kestrel(美洲红隼)
|
2000-05-08
|
J2SE 1.3.1
|
Ladybird(瓢虫)
|
2001-05-17
|
J2SE 1.4.0
|
Merlin(灰背隼)
|
2002-02-13
|
J2SE 1.4.1
|
grasshopper(蚱蜢)
|
2002-09-16
|
J2SE 1.4.2
|
Mantis(螳螂)
|
2003-06-26
|
Java SE 5.0 (1.5.0)
|
Tiger(老虎)
|
2004-09-30
|
Java SE 6.0 (1.6.0)
|
Mustang(野马)
|
2006-04
|
Java SE 7.0 (1.7.0)
|
Dolphin(海豚)
|
2011-07-28
|
Java SE 8.0 (1.8.0)
|
Spider(蜘蛛) |
2014-03-18
|
Java SE 9 | 2017-09-21 |
环境配置
Windows下
/* HelloWorld.java */
public class HelloWorld
{
public static void main(String[] arg)
{
System.out.println("Hello,World!");
}
}
javac HelloWorld.java
java HelloWorld
@pause
Hello,World
请按任意键继续. . .
在LINUX下
在LINUX下
export JAVA_HOME=/usr/jdk1.6.0_21 export JRE_HOME=/usr/jdk1.6.0_21/jre export PATH=$PATH:/usr/jdk1.6.0_21/bin export CLASSPATH=./:/usr/jdk1.6.0_21/lib:/usr/jdk1.6.0_21/jre/lib
public class Test{ public static void main(String[] args){ System.out.println("Hello,Welcome to Linux World!"); } }
export JAVA_HOME=/usr/local/jdk export PATH=$PATH:$JAVA_HOME/bin export CLASSPATH=.:$JAVA_HOME/jre/lib:$JAVA_HOME/lib:$JAVA_HOME/lib/tools.jar