当前位置: 首页 > news >正文

个人网站备案麻烦新开传奇网站

个人网站备案麻烦,新开传奇网站,华西医院网站开发,微信公众号手机网站开发1、Java 虚拟机是如何捕获异常的? 答: 在编译生成的字节码中,每个方法都附带一个异常表。异常表中的每一个条目代表一个异常处理器,并且由 from 指针、to 指针、target 指针以及所捕获的异常类型构成。这些指针的值是字节码索引…

1、Java 虚拟机是如何捕获异常的?

答:

在编译生成的字节码中,每个方法都附带一个异常表。异常表中的每一个条目代表一个异常处理器,并且由 from 指针、to 指针、target 指针以及所捕获的异常类型构成。这些指针的值是字节码索引(bytecode index,bci),用以定位字节码。

其中,from 指针和 to 指针标示了该异常处理器所监控的范围,例如 try 代码块所覆盖的范围。target 指针则指向异常处理器的起始位置,例如 catch 代码块的起始位置。 

当异常发生时,JVM会去遍历异常表中的所有条目,如果发现异常发生的位置在某个条目的from-to的范围内,那么就会对比抛出的异常和捕获的异常是否一致。如果一致跳转到target指针指向的异常处理器的起始位置执行。一旦该方法的异常表没有找到,则会在弹出该方法对应的栈帧,对调用该方法的方法执行同样的处理。

最坏的情况就是遍历整个线程栈也没有匹配的异常。

2、为什么finally总会被执行?

(1)通过Code对应字节码内容,可以看出,finally代码块在各种可能得分支下都复制了1份(冗余设计),不出异常的情况,总是会被执行到;

(2)从异常表中可以得出,出现异常,先跳转到catch里执行,catch执行完后,在跳转到finally里执行。所以 finally总是会被执行。

举例:

首先从异常表中可以看出,0~4(不包括4)范围内发生异常则立即跳转到7位置处理异常;另外0 ~4(try块)范围无论发生异常,必须转向15的位置执行finally块中的代码;另外7 ~12(catch块)范围内无论是否发生异常,也必须转向15的位置执行finally块。

3、请简述JVM运行时数据区的组成结构及各部分作用?

4、说说程序计数器的作用?
5、java内存区域?局部变量在哪?
答案在:Java虚拟机JVM-运行时数据区域说明_沐雪架构师的博客-CSDN博客
http://www.hkea.cn/news/654077/

相关文章:

  • 做装修广告网站好seo推广公司招商
  • 城市模拟建设游戏网站今天最新的新闻头条新闻
  • 手机网站自适应代码品牌网络营销策划方案
  • 个人网站建设在哪里百度资源搜索平台
  • 云空间免费空间北京网站优化校学费
  • 个人网站做导航网站项目推广平台有哪些
  • 威海住房建设局网站培训学校资质办理条件
  • 做趣味图形的网站免费线上培训平台
  • 女生做网站前端设计师成都网站seo
  • 濮阳建设银行官方网站搜索引擎优化的对比
  • 完全删除wordpressseo小白入门
  • 做网站常用到的css标签什么软件可以找客户资源
  • 有做销售产品的网站有哪些新闻头条今日新闻
  • 深圳自己做网站 服务器优化的近义词
  • 网站开发职业工资网站推广上首页
  • 宝安附近公司做网站建设多少钱深圳百度开户
  • 成都紧急通知seo网络营销招聘
  • 思坎普网站建设如何做营销推广
  • 太原网站优化公司有域名和服务器怎么建网站
  • 网站策划的前景seo 推广
  • wordpress导入网站文章怎么联系百度人工客服
  • 制冷机电工程东莞网站建设简阳seo排名优化培训
  • 北京网站建设 网站维护服装营销方式和手段
  • 唐山高端网站建设开发新客户的十大渠道
  • 小地方的旅游网站怎么建设seo教程有什么
  • 做网站教程宁波百度seo点击软件
  • asp.net个人网站北京专门做seo
  • 石家庄java开发做网站百度资源站长平台
  • 有哪些网站系统网络营销首先要进行
  • 网站建设硬件设置竞价广告是怎么推广的