java语言实现机制
一、java虚拟机(Java Virtual Machine)
1.java虚拟机定义了指令集(相当于中央处理器CPU)、寄存器集、类文件结构栈、垃圾收集堆、内存区域。
1)java解释器负责将java字节码文件解释执行,边解释,边执行;
2)JIT(just in time)一次解释完,在运行特定平台上的机器码;
2.java虚拟机执行过程中有三个典型特点:
1)多线程:java虚拟机支持多个线程同时运行,这些线程独立的执行java代码,处理公共数据区和私有栈中的数据;
2)动态连接:java程序之所以适合在网络上运行,其主要原因是由于java虚拟机具有动态连接特;
3)异常处理:java虚拟机提供了可靠的异常处理;
3.java虚拟机运行时数据区
4、字节码的运行步骤
加载代码→校验代码→执行代码
5、JVM工作步骤(类加载器把一个类装入java虚拟机)
1)装载:查找和导入类和接口的class文件;
2)链接:检查装入class文件的正确性,然后java虚拟机为变量分配内存,设置默认值
校验→准备→解析过程;
3)初始化:把符号引用变成直接引用;
二、java垃圾回收机制(Garbage C0llection)
动态的实施对象被存放在内存堆中(Memory Heap)
三、代码安全性检测(Code Security)
1)java 1.0 采用了沙箱(sandbox)安全模型;
2)java 1.1 采用了信任安全模型;
3)java 2 采用了域管理方式的安全模型;