jvm简介
2016-04-19 00:07
375 查看
定义
jvm严格来讲是一种规范,现下最流行的实现是hotspot。
发展史
1996年 SUN JDK 1.0 Classic VM
纯解释运行,使用外挂进行JIT
1997年 JDK1.1 发布
AWT、内部类、JDBC、RMI、反射
1998年 JDK1.2 Solaris Exact VM
JIT 解释器混合
Accurate Memory Management 精确内存管理,数据类型敏感
提升的GC性能
2000年 JDK 1.3 Hotspot 作为默认虚拟机发布
2002年 JDK 1.4 Classic VM退出历史舞台
原码,反码,补码
原码:第一位为符号位(0为正数,1为负数)
反码:符号位不动,原码取反
负数补码:符号位不动,反码加1
正数补码:和原码相同
打印整数的二进制表示
-6
原码: 10000110
反码: 11111001
补码: 11111010
-1
原码: 10000001
反码: 11111110
补码: 11111111
0的正数和负数
正数:00000000
负数:10000000
用补码表示为00000000
补码主要用来运算(补码直接相加就是运算结果):
-6+5
11111010
+ 00000101
= 11111111
-4+5
11111100
+ 00000101
= 00000001
-3+5
11111101
+ 00000101
= 00000010
JVM需要对Java Library 提供以下支持:
反射 java.lang.reflect
ClassLoader
初始化class和interface
安全相关 java.security
多线程
弱引用
jvm底层执行代码
jvm严格来讲是一种规范,现下最流行的实现是hotspot。
发展史
1996年 SUN JDK 1.0 Classic VM
纯解释运行,使用外挂进行JIT
1997年 JDK1.1 发布
AWT、内部类、JDBC、RMI、反射
1998年 JDK1.2 Solaris Exact VM
JIT 解释器混合
Accurate Memory Management 精确内存管理,数据类型敏感
提升的GC性能
2000年 JDK 1.3 Hotspot 作为默认虚拟机发布
2002年 JDK 1.4 Classic VM退出历史舞台
原码,反码,补码
原码:第一位为符号位(0为正数,1为负数)
反码:符号位不动,原码取反
负数补码:符号位不动,反码加1
正数补码:和原码相同
打印整数的二进制表示
int a=-6; for(int i=0;i<32;i++){ int t=(a & 0x80000000>>>i)>>>(31-i); System.out.print(t); }
-6
原码: 10000110
反码: 11111001
补码: 11111010
-1
原码: 10000001
反码: 11111110
补码: 11111111
0的正数和负数
正数:00000000
负数:10000000
用补码表示为00000000
补码主要用来运算(补码直接相加就是运算结果):
-6+5
11111010
+ 00000101
= 11111111
-4+5
11111100
+ 00000101
= 00000001
-3+5
11111101
+ 00000101
= 00000010
JVM需要对Java Library 提供以下支持:
反射 java.lang.reflect
ClassLoader
初始化class和interface
安全相关 java.security
多线程
弱引用
jvm底层执行代码
相关文章推荐
- font简写语法
- 多线程编程中保证线程安全(1)
- LeetCode 刷题:Q1:Two Sum
- Marsaglia XORshift随机数算法
- LeetCode 79. Word Search
- Android架构知识
- 二叉搜索树的后序遍历序列
- Spring 获取propertise文件中的值
- ASP.NET中CheckBoxList复选框列表控件详细使用方法
- ASP.NET中DropDownList下拉框列表控件绑定数据的4种方法
- ASP.NET中FileUpload文件上传控件应用实例
- yii2中的rules 自定义验证规则详解
- ThinkPHP中where()使用方法详解
- ThinkPHP中limit()使用方法详解
- ThinkPHP中order()使用方法详解
- 又拍云异步上传实例教程详解
- Python实现文件复制删除
- python安装与使用redis的方法
- python实现域名系统(DNS)正向查询的方法
- python实现简单socket通信的方法