/**
* java虚拟机规范———java虚拟机指令集
* 一条虚拟机指令由一个指定要完成操作的操作码和表示代操作值的零或多个操作数构成。
* @设定“必须”的含义
* 每条指令的描述总是在java虚拟机代码能够符合相关静态和结构约束的前提下给出的。
* 在此约束的保证下,必须和不允许的条件要求都能得到满足。
* 如果在运行时,某项带有必须和不允许的含义没有得到足够满足,java虚拟机的行为时不可预知的。——可预知的思维模式在数据算法时代会是好的吗?
*
* java虚拟机会在链接阶段通过class文件验证器来检查java虚拟机代码是否满足上述静态和结构化约束,因此java虚拟机会尝试
* 执行一个有效的class文件中的代码。在链接期执行验证是否合理,因为这样只需要检查一次,从而降低运行期的工作量。
*
*
* @保留操作码
* 0xfe,0xff助记符是impdep1,impdep2的两个操作码作为后门和陷阱出现,目的是分别以软件及硬件方式来提供一些与实现相关的功能。
* oxca breakpoint的操作码是提供给调试器来实现断点功能
* 保留操作码只能用于虚拟机内部实现。
*
* @虚拟机错误
* 虚拟机出现内部异常,或者由于资源限制导致虚拟机无法实现所描述的语义。抛出VirtualMachineError子类的实例
* InternalError 实现虚拟机软件错误,底层主机系统的软件错误及硬件错误都会导致。
* OutOfMemoryError 虚拟机实现耗尽了所有虚拟或物理内存,并且内存自动管理子系统无法回收到创建新对象所需的足够内存空间时抛出
* StackOverflowError 虚拟机实现耗尽线程全部的栈空间,抛出
* UnknownError 当某种异常或错误出现,但虚拟机实现又无法确定它具体是那种异常错误,抛出
*/
《java虚拟机规范 On java 8》
链接:https://pan.baidu.com/s/12XMc1CCMzh9SGD3DBvZAjw?pwd=hzd8
提取码:hzd8