跟叶子猿学习JVM(一)杂七杂八的基本了解
JDK,JRE,JVM关系
Jdk是java开发工具包
Jre是java运行时环境
Jvm是java虚拟机
详细如下图
内存浅了解
设置堆内存溢出的时候自动导出堆快照信息参数 -XX:+HeapDumpOnOutOfMemoryError
设置之后在对内存溢出。打印异常之前就会导出堆快照,我们可以通过eclipse的一个工具解析快照文件。进行查看分析。
调整虚拟机运行可用内存参数为20M:-Xms20M -Xmx20M
Jvm可视化监控工具:Jconsole 可以查看内存等监控信息
发展进程
1991年 oak诞生,但是不是很被认可
1995 改名java 提出概念“一次编写,到处运行”Write once run anywhere
1996 Sun公司发布JDK1.0
1998发布1.2 提出三个方向 J2SE(面向桌面的应用)、 J2EE(企业级应用) 、J2 ME(移动开发)
2000发布1.3
2002发布1.4,一般框架都支持jdk1.4以上。之后每隔两年发布一个大版本直至2006年。2006年Java开源
2009年发布1.7 Oracle收购了Sun
2014年发布1.8
技术体系
Java程序设计语言
各硬件平台上的Java虚拟机
Class文件格式
Java API
第三方Java类库
Code经过编译器编译成Class文件(字节码文件),运行在Java虚拟机中。