JDK是 Java 语言的软体开发工具包,主要用于移动设备、嵌入式设备上的java应用程式。JDK是整个java开发的核心,它包含了JAVA的运行环境(JVM+Java系统类库)和JAVA工具。
基本介绍
- 软体名称JDK
- 开发商SunMicrosystems
- 软体版本JDK 8
- 更新时间2017-10-17
- 软体语言Java
- 主要用于PC、移动设备
版本
JDK(Java Development Kit) 是 Java 语言的软体开发工具包(SDK)。
SE(JavaSE),standard edition,标準版,是我们通常用的一个版本,从JDK 5.0开始,改名为Java SE。
EE(JavaEE),enterprise edition,企业版,使用这种JDK开发J2EE应用程式,从JDK 5.0开始,改名为Java EE。从2018年2月26日开始,J2EE改名为Jakarta EE。
ME(J2ME),micro edition,主要用于移动设备、嵌入式设备上的java应用程式,从JDK 5.0开始,改名为Java ME。
没有JDK的话,无法编译Java程式(指java源码.java档案),如果想只运行Java程式(指class或jar或其它归档档案),要确保已安装相应的JRE。
以下是各版本的名称及发布日期
版本 | 名称 | 发行日期 |
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 | |
Java SE 10 | 2018-03-14 |
jdk各个版本的特性
1997 年Servlet技术的产生以及紧接着JSP的产生,为Java对抗PHP,ASP等等伺服器端语言带来了筹码。1998年,Sun发布了EJB1.0标準,至此J2EE平台的三个核心技术都已经出现。于是,1999年,Sun正式发布了J2EE的第一个版本。并于1999年底发布了J2EE1.2,在 2001年发布了J2EE1.3,2003年发布了J2EE1.4。
2.J2EE1.3 J2EE1.3的架构,其中主要包含了Applet容器,Application Client容器,Web容器和EJB容器,并且包含了Web Component,EJB Component,Application Client Component,以JMS,JAAS,JAXP,JDBC,JAF,JavaMail,JTA等等技术做为基础。 1.3中引入了几个值得注意的功能Java讯息服务(定义了JMS的一组API),J2EE连线器技术(定义了扩展J2EE服务到非J2EE应用程式的标準),XML解析器的一组Java API,Servlet2.3,JSP1.2也都进行了性能扩展与最佳化,全新的CMP组件模型和MDB(讯息Bean)。
3.J2EE1.4 J2EE1.4 大体上的框架和J2EE1.3是一致的,1.4增加了对Web服务的支持,主要是Web Service,JAX-RPC,SAAJ,JAXR,还对EJB的讯息传递机制进行了完善(EJB2.1),部署与管理工具的增强(JMX),以及新版本的Servlet2.4和JSP2.0使得Web套用更加容易。
4.JAVA EE 5
JAVA EE 5拥有许多值得关注的特性。其中之一就是新的 Java Standard Tag Library (JSTL) 1.2 规范。JSTL 1.2 的关键是统一表达式语言,它允许我们在 JavaServer Faces (JSF) 中结合使用 JSTL 的最佳特性。
jdk1.8新特性
- Java 8允许我们给接口添加一个非抽象的方法实现,只需要使用 default关键字即可。
- 新增lambda表达式
- 提供函式式接口
- Java 8 允许你使用关键字来传递方法或者构造函式引用
- 我们可以直接在lambda表达式中访问外层的局部变数。
组成
JDK包含的基本组件包括
javac – 编译器,将源程式转成位元组码
jar – 打包工具,将相关的类档案打包成一个档案
javadoc – 文档生成器,从源码注释中提取文档
jdb – debugger,查错工具
java – 运行编译后的java程式(.class后缀的)
appletviewer小程式浏览器,一种执行HTML档案上的Java小程式的Java浏览器。
Javah产生可以调用Java过程的C过程,或建立能被Java程式调用的C过程的头档案。
JavapJava反彙编器,显示编译类档案中的可访问功能和数据,显示位元组代码含义。
Jconsole: Java进行系统调试和监控的工具
jdk结构图
分类
java.lang 这个是系统的基础类,比如String等都是这里面的,这个包是唯一一个可以不用引入(import)就可以使用的包。
java.io 这里面是所有输入输出有关的类,比如档案操作等。
java.nio为了完善io包中的功能,提高io包中性能而写的一个新包 ,例如NIO非堵塞套用
java.net: 这里面是与网路有关的类,比如URL,URLConnection等。
java.util 这个是系统辅助类,特别是集合类Collection,List,Map等。
java.sql 这个是资料库操作的类,Connection, Statement,ResultSet等。
javax.servlet这个是JSP,Servlet等使用到的类。
环境配置
在Windows下
java运行环境安装与测试及HelloWorld的实现。
1.下载j2sdk 1.6.0_21或更高版本 (http://java.sun .com,建议下载其Java Documentation,这是Java帮助文档)。
2.运行刚刚下载的安装程式进行正式安装(以下假设安装于c:\jdk1.6.0_21\,建议安装路径不要有空格,不宜安装在\Program Files目录下!)。
3.设定运行环境参数
a.如果是Win95、Win98,在\autoexec.bat的面添加如下3行语句
set JAVA_HOME=JDK安装目录
set PATH=%JAVA_HOME%\bin;%PATH%
set CLASSPATH=.;%JAVA_HOME%\lib
注意---可用dos命令notepad c:\autoexec.bat打开记事本,加入上面的3行语句。
b.如果是Win2000、WinXP系统,使用滑鼠右击“我的电脑”->属性->高级->环境变数
系统变数->新建->变数名JAVA_HOME 变数值JDK安装目录
系统变数->新建->变数名CLASSPATH 变数值.;%JAVA_HOME%\lib
系统变数->编辑->变数名Path 在变数值的最前面加上%JAVA_HOME%\bin;
c.如果是Vista、Win7、Win8系统,使用滑鼠右击“计算机”->属性->左侧高级系统设定->高级->环境变数
系统变数->新建->变数名JAVA_HOME 变数值JDK安装目录
系统变数->新建->变数名CLASSPATH 变数值.;%JAVA_HOME%\lib
系统变数->编辑->变数名Path 在变数值的最前面加上%JAVA_HOME%\bin;
(CLASSPATH中有一英文句号“.”后跟一个分号,表示当前路径的意思)
(使用命令行的方法设定环境变数,只会对当前视窗生效)
(改Path变数时,不是删除原有的值而是添加新的路径)
4.使用文本编辑器(比如:edit .com/记事本/UltraEdit/EditPlus)编写如下代码,并保存为档案HelloWorld.java(必须大小写正确!假设为c:\test\HelloWorld.java)
/ HelloWorld.java /
public class HelloWorld
{
public static void main(String[] argv)
{
System.out.println("Hello,World!");
}
}
5.开启一个命令提示符视窗,跳转到HelloWorld.java所在的目录中
c:\>cd \test
6.编译HelloWorld.java为HelloWorld.class
c:\test>javac HelloWorld.java
7.运行HelloWorld.class
c:\test>java HelloWorld
Hello,World!
其中步骤5~7可以简化成批处理,这样可以不用切换路径,方法如下
在java源档案所在资料夹建立一个记事本文档,输入以下3行代码
javac HelloWorld.java
java HelloWorld
@pause
将其保存为"Java运行批处理.bat"
然后双击这个批处理档案,将出现cmd视窗下的编译运行结果,结果如下
C:\test>javac HelloWorld.java
C:\test>java HelloWorld
Hello,World!
请按任意键继续. . .
在LINUX下
UbuntuLinux下jdk的安装与配置
1.安装
从sun公司网站www.sun .com下载linux版本的jdk
打开终端,用cd命令进入jdk所在目录,执行複製命令
sudo cp jdk-6u7-linux-i586.bin /usr
即将jdk複製到/usr目录下
然后进入/usr目录
cd /usr
执行许可权
chmod +x jdk-6u7-linux-i586.bin
执行安装命令
./jdk-6u21-linux-i586.bin
(档案名称)
如遇错误,可先切换至root用户下,su root,再执行安装命令
安装成功会在/usr目录下生成jdk1.6.0_07目录,就是jdk的安装目录
重启电脑,打开终端,输入java -version
如若有显示java的版本信息,则表示安装成功,
2.配置
安装成功后需要配置jdk环境变数
用cd命令进入/etc目录
sudo vi profile
即执行编辑profile档案命令
在umas k022前添加如下内容:
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
保存退出,重启电脑
3.测试
新建Test.java
public class Test{
public static void main(String[] args){
System.out.println("Hello,Welcome to Linux World!");
}
}
在终端用cd命令进入Test.java目录,然后输入
javac Test.java
java Test
若输出
Hello,Welcome to Linux World!
则表明配置成功!
如不能通过编译,可通过重新启动系统试试
4.注意
在用vi命令编辑profile档案时,Linux初学者可能还不熟用
sudo vi profile进入编辑档案后如出现
Press ENTER or type command to continue
则按回车
然后按方向键“下”直到umas k022前一行
按字母o进入编辑状态
输入环境变数内容
回车,按几次ESC键,直到听到"嘀"声,输入
:x
回车
即保存退出
至此,Linux jdk环境变数配置完成
如果安装完成时候在终端输入java -version 不显示当前的安装版本的话
则需要卸载原先的版本即可。
yum -y remove <java版本>
例如centos 版本
[root@localhost /]# yum -y remove java-1.4.2-gcj-compat 卸载它。
[root@localhost soft]# chmod 700 jdk-1_5_0_13-linux-i586.bin
[root@localhost soft]# ./jdk-1_5_0_13-linux-i586.bin
[root@localhost soft]# mv jdk1.5.0_13/ /usr/local/
为了方便以后升级,建立软连结
[root@localhost local]# ln -s /usr/local/jdk1.5.0_13/ /usr/local/jdk
定义环境变数
[root@localhost local]# vi /etc/profile
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
export PATH=$PATH:$JAVA_HOME/bin
export CLASSPATH=.:$JAVA_HOME/jre/lib:$JAVA_HOME/lib:$JAVA_HOME/lib/tools.jar
ok,至此java环境配置完毕
常用基本工具
- Javac: Java源程式编译器,将Java原始码转换成位元组码。
2. Java: Java解释器,直接从位元组码档案,又称为类档案.执行Java应用程式的字
节代码。
3. appletviewer.exe Java applet浏览器。appletviewer命令可在脱离全球资讯网浏览器
环境的情况下运行applet
4. jar: java应用程式打包工具,可将多个类档案合併为单个JAR归档档案。
5.Javadoc: Java API文档生成器从Java源程式代码注释中提取文档,生成API文
档HTML页。
6. jdb: Java调试器(debugger),可以逐行执行程式.设定断点和检查变Md
7.jps: 查看Java虚拟机进程列表