博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Jvm(49),指令集----异常处理指令
阅读量:5924 次
发布时间:2019-06-19

本文共 692 字,大约阅读时间需要 2 分钟。

 

假如你现在还在为自己的技术担忧,假如你现在想提升自己的工资,假如你想在职场上获得更多的话语权,假如你想顺利的度过35岁这个魔咒,假如你想体验BAT的工作环境,那么现在请我们一起开启提升技术之旅吧,详情请点击

 

在Java程序中显式抛出异常的操作(throw语句)都由athrow指令来实现,除了用throw语句显式抛出异常情况之外,Java虚拟机规范还规定了许多运行时异常会在其他Java虚拟机指令检测到异常状况时自动抛出。例如,在前面介绍的整数运算中,当除数为零时,虚拟机会在idiv或ldiv指令中抛出ArithmeticException异常。

而在Java虚拟机中,处理异常(catch语句)不是由字节码指令来实现的(很久之前曾经使用jsr和ret指令来实现,现在已经不用了),而是采用异常表来完成的。案例一:

public class Demo5 {

public static void main(String[] args) {

 

throw new RuntimeException("我是异常");

}

}

案例二:

public class Demo5 {

public static void main(String[] args) {

 

int a = 1 /

}

}

是由idiv抛出来的。

public class Demo5 {

public static void main(String[] args) {

 

try {

int a = 1 /

} catch (Exception e) { e.printStackTrace();

}

}

}

 

转载地址:http://itavx.baihongyu.com/

你可能感兴趣的文章
Hadoop集群环境搭建
查看>>
Quartz2D
查看>>
iOS通讯录
查看>>
JS单例模式
查看>>
数据库查询性能优化之利器—索引(二)
查看>>
django自定义管理表单
查看>>
栈与queue
查看>>
设置环境变量
查看>>
嵌入式主板的应用领域
查看>>
你的信息只值1毛钱 大数据时代如何不做“透明人”?
查看>>
非win7系统打开H3C的注意事项
查看>>
基础篇|PHP如何解决网站大流量和高并发
查看>>
安装RabbitMQ(一)
查看>>
Java学习方法:Java学习路线分享
查看>>
文件查找和压缩
查看>>
来,赏一赏咱敬业的春
查看>>
对于java我的看法
查看>>
Java学习之封装
查看>>
Java项目实际报错和解决方案(持续更新)
查看>>
我的友情链接
查看>>