-
JDK 1.7 根蒂根基概念和目次布局
添加时间:2013-6-3 点击量:参考材料:
http://blog.csdn.net/kindazrael/article/details/7270673
http://docs.oracle.com/javase/7/docs/index.html
JDK and JRE File Structure http://docs.oracle.com/javase/7/docs/technotes/tools/windows/jdkfiles.htmlJDK = JRE + Tools&Tool APIs
JDK的核心是Java SE API。Java SE API是一些预定义的类库,开辟人员须要用这些类来接见Java说话的功能。Java SE API包含一些首要的说话布局以及根蒂根基图形,收集和文件I/O。我们在本身的法度中,调用进步前辈们写好的这些Class,来作为我们本身开辟的一个根蒂根基。当然,如今已经有越来越多的机能更好或者功能更强大的第三方类库供我们应用。一般来说,Java API的非I/O项目组对于运行Java的所有平台是雷同的,而I/O项目组则仅在通用Java景象中实现。
JDK的种类:最主流的JDK是Sun公司公布的JDK,除了Sun之外,还有很多公司和组织都开辟了本身的JDK,例如IBM公司开辟的JDK,BEA公司的Jrocket,还有GNU组织开辟的JDK等等。此中IBM的JDK包含的JVM(Java Virtual Machine)运行效力要比Sun JDK包含的JVM赶过很多。而专门运行在x86平台的Jrocket在办事端运行效力也要比Sun JDK好很多。
JRE(Java Runtime Environment,Java运行景象),运行JAVA法度所必须的景象的凑集。J2RE是Java2 Runtime Environment,即Java运行景象,有时简称JRE. 若是你只须要运行Java法度或Applet,并安装它即可。若是你要自行开辟 Java软件,请JDK. 在JDK中附带有JRE.重视因为Microsoft对Java的支撑不完全,请不要应用IE自带的虚拟机来运行 Applet,务必安装一个JRE或JDK.包含:
1. Java Runtime Environment(JRE)是可以在其上运行、测试和传输应用法度的Java平台。它包含Java JVM标准实现、Java平台核心类库和支撑文件。它不包含开辟对象——编译器、调试器和其它对象。
JVM:Java Virtual Mechinal(JAVA虚拟机)。JVM是JRE的一项目组,它是一个虚构出来的策画机,是经由过程在实际的策画机上仿真模仿各类策画机功能来实现的。JVM有本身完美的硬件架构,如处理惩罚器、客栈、存放器等,还具有响应的指令体系。JVM 的首要工作是申明本身的指令集(即字节码)并映射到本地的 CPU 的指令集或 OS 的体系调用。Java说话是跨平台运行的,其实就是不合的操纵体系,应用不合的JVM映射规矩,让其与操纵体系无关,完成了跨平台性。JVM 对上层的 Java 源文件是不关怀的,它存眷的只是由源文件生成的类文件( class file )。类文件的构成包含 JVM 指令集,符号表以及一些补贴信息。
2. JRE所需帮助软件 ——Java Plug-in——以便在浏览器中运行applet.
 
JDK目次布局
安装OS:win7 x86
安装路径: C:\Program Files\Java
JDK版本:jdk1.7.0_21//---------------------------JDK开辟文件和目次------------------------------------------------
               jdk1.7.0_21
     ___________|_______________________  
    |           |                      |  
    bin         lib                    jre  
    |           |             __________|_______________________  
java.exe    tools.jar        |                                  |          
javac.exe   dt.jar           bin                                lib                 javap.exe            _________|____ __________         __________|_______ ________ ________          
javah.exe           |              |          |       |          |       |        |        |  
javadoc.exe     java.exe        client      server  rt.jar      ext  security  applet    fonts  
                java.dll           |          |   charsets.jar   |                    
                awt.dll         jvm.dll    jvm.dll          localedata.jar C:\Program Files\Java\jdk1.7.0_21 -- JDK的根目次,包含一些软件版权,声明,和自述文件,同时包含归档了的Java平台源代码包src.zip      
C:\Program Files\Java\jdk1.7.0_21\src.zip -- 归档的Java源代码 
C:\Program Files\Java\jdk1.7.0_21\include -- C 说话头文件 支撑 用Java本地接口和Java虚拟机接口 来本机代码编程
C:\Program Files\Java\jdk1.7.0_21\lib  -- Java开辟对象要用的一些库文件,有包含了支撑JDK对象的非核心类库tool.jar,dt.jar 归档的 BeanInfo 文件,用于告诉IDE如许显示java组件如何让开辟者在本身的应用法度顶用户化它们 
================C:\Program Files\Java\jdk1.7.0_21\jre================
C:\Program Files\Java\jdk1.7.0_21\jre  -- JDK应用的Java运行景象(JRE)的根目次,这个运行景象实现了Java平台          
C:\Program Files\Java\jdk1.7.0_21\jre\bin -- Java平台所要用的对象和库的可履行文件这些可履行文件和 /jdk1.7.0_21/bin雷同的。这个路径不须要设置 PATH 景象变量  //Java 启动器对象充当了应用法度启动器(覆盖了1.1版本的JDK推出的旧版本JRE对象)
C:\Program Files\Java\jdk1.7.0_21\jre\bin\client  -- 包含Java Hotspot(Java机能引擎) Client Virtual Machine 客户虚拟机要用的DLL文件 
C:\Program Files\Java\jdk1.7.0_21\jre\bin\server -- 包含Java Hotspot(Java机能引擎) Server Virtual Machine 办事器虚拟机要用的DLL文件 ----JDK 比 JRE C:\Program Files\Java\jre7\bin多一个server端的java虚拟机。即这个folder “Server” 不存在于JRE下。
C:\Program Files\Java\jdk1.7.0_21\jre\lib -- JRE要用的代码库,属性设置,资料文件。 
C:\Program Files\Java\jdk1.7.0_21\jre\lib\rt.jar -- Java 勾引类库(java 核心APIRunTime类) 
C:\Program Files\Java\jdk1.7.0_21\jre\lib\charsets.jar -- 字符转换类库 
C:\Program Files\Java\jdk1.7.0_21\jre\lib\ext -- 默认的Java平台扩大安装景象 
C:\Program Files\Java\jdk1.7.0_21\jre\lib\ext\localedata.jar --  ava.text 和 java.util包要用到的地区数据  
C:\Program Files\Java\jdk1.7.0_21\jre\lib\security -- 包含安然经管文件,有安然规矩(java.policy)和安然属性文件(java.security) 
C:\Program Files\Java\jdk1.7.0_21\jre\lib\applet -- Java applets 要的Jar包,可以放到lib/applet/目次,可以节俭 applet 类装载器从本地文件体系装载 大的applets 所需的applet类时候,削减从网高低载具有雷同的保护的时候。 
C:\Program Files\Java\jdk1.7.0_21\jre\lib\fonts -- 包含平台所需的TrueType字体文件 
================C:\Program Files\Java\jdk1.7.0_21\db================
C:\Program Files\Java\jdk1.7.0_21\db  -- db目次,纯Java开辟的数据可 Derby,是一个开源的100%Java开辟的关系数据库 
        有关 Java DB 的信息,请拜见 http://developers.sun.com/prodtech/javadb/。
        有关 Derby 的文档,请拜见:http://db.apache.org/derby/manuals/index.html 
================C:\Program Files\Java\jdk1.7.0_21\bin================
C:\Program Files\Java\jdk1.7.0_21\bin -- JDK包含的一些开辟对象履行文件 
C:\Program Files\Java\jdk1.7.0_21\bin\java.exe --  根蒂根基对象 - Java应用法度启动器,直接从类文件履行Java应用法度字节代码
C:\Program Files\Java\jdk1.7.0_21\bin\javadoc.exe --  根蒂根基对象 - Java API 文档生成器,从源码注释中提取文档
C:\Program Files\Java\jdk1.7.0_21\bin\apt.exe --  根蒂根基对象 - java 注释处理惩罚器 
C:\Program Files\Java\jdk1.7.0_21\bin\appletviewer.exe --  根蒂根基对象 - java applet 小法度浏览器,一种履行HTML文件上的Java小法度的Java浏览器。
C:\Program Files\Java\jdk1.7.0_21\bin\jar.exe --  根蒂根基对象 - java文件紧缩打包对象 
C:\Program Files\Java\jdk1.7.0_21\bin\jdb.exe --  根蒂根基对象 - Java 调试器,debugger,查错对象
C:\Program Files\Java\jdk1.7.0_21\bin\javah.exe --  根蒂根基对象 - C 头文件和stub生成器,用于写本地化办法,例如临盆JNI样式的头文件。产生可以调用Java过程的C过程,或建树能被Java法度调用的C过程的头文件
C:\Program Files\Java\jdk1.7.0_21\bin\javap.exe --  根蒂根基对象 - class文件反编译对象,显示编译类文件中的可接见功能和数据,同时显示字节代码含义。
C:\Program Files\Java\jdk1.7.0_21\bin\extcheck.exe --  根蒂根基对象 - 用于检测jar包中的题目 
 
C:\Program Files\Java\jdk1.7.0_21\bin\keytool.exe -- 安然对象 - 经管密钥库和. 
C:\Program Files\Java\jdk1.7.0_21\bin\jarsigner.exe -- 安然对象 - 临盆和校验JAR 
C:\Program Files\Java\jdk1.7.0_21\bin\policytool.exe -- 安然对象 - 有效户界面的规矩经管对象   
C:\Program Files\Java\jdk1.7.0_21\bin\kinit.exe.exe -- 安然对象 - 用于获得懈弛存收集认证和谈Kerberos 票证的授予票证 
C:\Program Files\Java\jdk1.7.0_21\bin\klist.exe.exe -- 安然对象 - 根据高速缓存和密钥表中的 Kerberos 显示条目  
C:\Program Files\Java\jdk1.7.0_21\bin\ktab.exe.exe -- 安然对象 - 密钥和经管对象  
C:\Program Files\Java\jdk1.7.0_21\bin\native2ascii.exe -- Java国际化对象 - 将文本转化为 Unicode Latin-1。详情参考http://java.sun.com/javase/6/docs/technotes/tools/windows/native2ascii.html 
C:\Program Files\Java\jdk1.7.0_21\bin\rmic.exe -- 长途办法调用对象 - 生成长途对象的stubs and skeletons(存根和框架) 
C:\Program Files\Java\jdk1.7.0_21\bin\rmid.exe -- 长途办法调用对象 - Java 长途办法调用(RMI:Remote Method Invocation) 活化体系守护过程 
C:\Program Files\Java\jdk1.7.0_21\bin\rmiregistry.exe -- 长途办法调用对象 - Java 长途对象注册表 
C:\Program Files\Java\jdk1.7.0_21\bin\serialver.exe -- 长途办法调用对象 - 返回类的 serialVersionUID.
C:\Program Files\Java\jdk1.7.0_21\bin\tnameserv.exe -- Java IDL and RMI-IIOP 对象 - Provides access to the naming service.  
C:\Program Files\Java\jdk1.7.0_21\bin\idlj.exe -- Java IDL and RMI-IIOP 对象 - 临盆映射到OMG IDL接口可以使Java应用法度应用CORBA的.java文件 
C:\Program Files\Java\jdk1.7.0_21\bin\orbd.exe -- Java IDL and RMI-IIOP 对象 - 为客户可以在CORBA景象下透明的定位和调用办事器的稳定的对象供给支撑 
C:\Program Files\Java\jdk1.7.0_21\bin\servertool.exe -- Java IDL and RMI-IIOP 对象 - 为应用法度供给易于应用的接口用于注册,刊出,启动,封闭办事器 
C:\Program Files\Java\jdk1.7.0_21\bin\pack200.exe -- Java 安排对象 - 应用java gzip紧缩对象将JAR文件转换为紧缩的pack200文件,临盆打包文件是高度紧缩的JAR包,可以直接安排,削减时候 
C:\Program Files\Java\jdk1.7.0_21\bin\unpack200.exe -- Java 安排对象 - 解包pack200文件为JARs  
C:\Program Files\Java\jdk1.7.0_21\bin\htmlconverter.exe -- Java 插件对象 - Java Plug-in HTML转换器 htmlconverter -gui 可以启动图形界面 
C:\Program Files\Java\jdk1.7.0_21\bin\javaws.exe -- Java web 启动对象 - Java web 启动号令行对象 
C:\Program Files\Java\jdk1.7.0_21\bin\jvisualvm.exe -- Java 故障查验,法度概要解析,把守和经管对象 - 一个图形化的Java虚拟机,不说了 大师研究一下就发明太酷了.这是想懂得JVM的人的神器http://java.sun.com/javase/6/docs/technotes/guides/visualvm/index.html
C:\Program Files\Java\jdk1.7.0_21\bin\jconsole.exe -- Java 故障查验,法度概要解析,把守和经管对象 -java把守台和经管把握台,图形界面的功能太强大了,运行一下就知道 ,不想多说,看了就知道 
C:\Program Files\Java\jdk1.7.0_21\bin\schemagen.exe  -- Java web 办事对象 - Java构架的XML Schema生成器 
C:\Program Files\Java\jdk1.7.0_21\bin\wsgen.exe  -- Java web 办事对象 - 生成 JAX-WS 
C:\Program Files\Java\jdk1.7.0_21\bin\wsimport.exe -- Java web 办事对象 - 生成 JAX-WS 
C:\Program Files\Java\jdk1.7.0_21\bin\xjc.exe -- Java web 办事对象 - 绑定编译器  
C:\Program Files\Java\jdk1.7.0_21\bin\jps.exe -- 把守对象 - JVM Process Status 过程状况对象。列出目标体系的HotSpot JJVM , 把守Java虚拟机的机能,不支撑Windows 98 和Windows ME 平台 
C:\Program Files\Java\jdk1.7.0_21\bin\jstat.exe -- 把守对象 - 遵守号令行的具体请求记录和收集一个JVM的机能数据 
C:\Program Files\Java\jdk1.7.0_21\bin\jstatd.exe -- 把守对象 - JVM jstat 的守护过程 
C:\Program Files\Java\jdk1.7.0_21\bin\jinfo.exe -- 故障检测和补缀对象 - 设备或打印某个Java过程VM flag 
C:\Program Files\Java\jdk1.7.0_21\bin\jhat.exe -- 故障检测和补缀对象 - 堆储存查看器 
C:\Program Files\Java\jdk1.7.0_21\bin\jmap.exe  -- 故障检测和补缀对象 - Java内存图 
C:\Program Files\Java\jdk1.7.0_21\bin\jsadebugd.exe -- 故障检测和补缀对象 - Java 的 Serviceability Agent Debug的守护过程 
C:\Program Files\Java\jdk1.7.0_21\bin\jstack.exe -- 故障检测和补缀对象 - Java客栈跟踪 
C:\Program Files\Java\jdk1.7.0_21\bin\jrunscript.exe -- Java脚本对象 - 运行脚本 
彼此相爱,却不要让爱成了束缚:不如让它成为涌动的大海,两岸乃是你们的灵魂。互斟满杯,却不要同饮一杯。相赠面包,却不要共食一个。一起歌舞欢喜,却依然各自独立,相互交心,却不是让对方收藏。因为唯有生命之手,方能收容你们的心。站在一起却不要过于靠近。—— 纪伯伦《先知》