jdk1.7.0_80源码包结构
解压源码src.zip,jdk源码结构如下所示:
src
|--com.sun sun公司对jdk的实现,Oracle官方不支持,不保证跨平台(可能一些类linux有而windows没有),甚至以后会有类的删减、报名更换,比如换成:com.oracle
|--java j2se官方API包
|--javax j2se扩展包,是j2ee的包(注释1)。像xml、servlet、jsp的支持在这个包里面
|--launcher jre用于启动程序main()方法的类,参考:Java Launcher代码分析 (http://blog.csdn.net/a379039233/article/details/6160800)
|--org 企业或组织提供的java类库,包括:ietf、omg、w3c、xml
|--sunw sunw是sun公司之前在纳斯达克的股票代码 ,该包准备对io、util的重写或实现,只有三个接口类,基本上是个空包
在源码的学习过程中,我们重点需要关注的是java包,其次是javax。
java包结构介绍:
java
|--applet Java小程序
|--awt Java构建用户图形界面(GUI)
|--beans
|--io Java语言的标准输入/输出类库,如基本输入/ 输出流、文件输入/输出、过滤输入/输出等
|--lang Java核心类库,包含运行java程序必不可少的系统类,如基本数据类型、基本数学函数、字符串处理、线程、异常处理、reflect反射等,系统缺省加载这个包
|--math
|--net Java网络 传输功能,Socket操作
|--nio 非阻塞IO,面向缓冲区,异步socket
|--rmi
|--security
|--sql 实现JDBC的类库
|--text
|--util Java工具类库。如日期类Date、随机数类Random、集合Collection、Map、压缩文件处理zip包等
注释1:J2SE、J2EE、J2ME介绍
J2SE,Java 2 Standard Edition,Java 2 标准版,主要用于桌面应用软件的编程
J2EE,Java 2 Enterprise Edition,Java 2 企业版,主要用于开发B/S结构的应用程序,包含:servlet、jsp、jdbc等13种技术
J2ME,Java 2 Micro Edition,Java微型版,主要用于嵌入式系统的开发,针对呼机、手机、机顶盒等微型电子设备
jdk1.7.0_80源码包结构的更多相关文章
- JDK源码包结构分类
最近查看JDK源码时,无意间发现几个类在陌生包里:com.sun.*.sun.*.org.*,google了一把总结了下以备他人搜索,如内容有误欢迎指正! Jre库包含的jar文件(jdk1.6) ...
- ibatis源码学习3_源码包结构
ibatis的技术是从xml里面字符串转换成JAVA对象,对象填充JDBC的statement查询,然后从resultset取对象返回,另外利用ThreadLocal实现线程安全,JDBC保证了事务控 ...
- jdk源码剖析一:OpenJDK-Hotspot源码包目录结构
开启正文之前,先说一下源码剖析这一系列,就以“死磕到底”的精神贯彻始终,JDK-->JRE-->JVM(以openJDK代替) 最近想看看JDK8源码,但JDK中JVM(安装在本地C:\P ...
- jdk1.8源码包下载并导入到开发环境下助推高质量代码(Eclipse、MyEclipse和Scala IDEA for Eclipse皆适用)(图文详解)
不多说,直接上干货! jdk1.8 源码, Linux的同学可以用的上. 由于源码JDK是前版本的超集, 所以1.4, 1.5, 1.6, 1.7都可以用的上. 其实大家安装的jdk路径下,这 ...
- 【JDK1.8】JDK1.8集合源码阅读——HashMap
一.前言 笔者之前看过一篇关于jdk1.8的HashMap源码分析,作者对里面的解读很到位,将代码里关键的地方都说了一遍,值得推荐.笔者也会顺着他的顺序来阅读一遍,除了基础的方法外,添加了其他补充内容 ...
- 【安卓本卓】Android系统源码篇之(一)源码获取、源码目录结构及源码阅读工具简介
前言 古人常说,“熟读唐诗三百首,不会作诗也会吟”,说明了大量阅读诗歌名篇对学习作诗有非常大的帮助.做开发也一样,Android源码是全世界最优秀的Android工程师编写的代码,也是A ...
- Hadoop2.0源码包简介
Hadoop2.0源码包简介 1.解压源码包: 2.目录结构: hadoop-common-project:Hadoop基础库所在目录,如RPC.Metrics.Counter等.包含了其它所有模块可 ...
- jdk1.8.0_45源码解读——HashSet的实现
jdk1.8.0_45源码解读——HashSet的实现 一.HashSet概述 HashSet实现Set接口,由哈希表(实际上是一个HashMap实例)支持.主要具有以下的特点: 不保证set的迭代顺 ...
- jdk1.8.0_45源码解读——HashMap的实现
jdk1.8.0_45源码解读——HashMap的实现 一.HashMap概述 HashMap是基于哈希表的Map接口实现的,此实现提供所有可选的映射操作.存储的是<key,value>对 ...
随机推荐
- 二分+DP+Trie HDOJ 5715 XOR 游戏
题目链接 XOR 游戏 Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Others)Total ...
- bash快捷键
https://linuxtoy.org/archives/bash-shortcuts.html 编辑命令 Ctrl + a :移到命令行首 Ctrl + e :移到命令行尾 Ctrl + f :按 ...
- View的弹性滑动
View的弹性滑动 实现弹性滑动的思想:将一次大的滑动分成若干次小的滑动并在一个时间段内完成,具体的实现方式有很多,如通过Scroller.Handler#postDelayed以及Thread#sl ...
- About_PHP读写文件
1.PHP部分文件操作函数:fopen ,fread ,filesize,fwrite,fclose 2.unlink() rmdir() 删除函数 unlink() 删除文件函数:unlink(路径 ...
- 使用mybatis-generator生成代码
文档地址: http://mbg.cndocs.tk/index.html 以下是一个简单的配置内容. 一.在maven配置文件中添加mybatis-generator插件 1 2 3 4 5 ...
- 基于node.js的压缩合并安装
1.构建工具(grunt,gulp) 下载地址:http://gruntjs.cn/http://gruntjs.com/ (1)安装nodejs(http://www.nodejs.org/) 验证 ...
- 响应式web网站设计制作方法
在研究响应式的时候,记录了一些感想,分享出来,抛砖引玉,希望可以和大家一起讨论.总结下来,响应式比之前想象的要复杂得多.1. ie9以下(不包括ie9)采用ie条件注释,为ie8以及一下单独开一个样式 ...
- siteserver cms选择栏目搜索无效
标签必须以空格分开,且option 的value必须给id不能给名称
- nodejs学习之events的使用
实用events做个小例子: var mysql = require("mysql"); var Event = require("events").Event ...
- js_截取Url值
"total" -->传递参数时的名字 var reg = new RegExp("(^|&)" + "total" + &q ...