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

记录学习--字节码解析try catch

1.示例代码

	@Testpublic void someTest() {String s = "111";try {s = "222";int i = 1/0;} catch (Exception e){e.printStackTrace();System.out.println(s);}System.out.println(s);}

2.示例代码对应的字节码

 0 ldc #2 <111>2 astore_13 ldc #3 <222>5 astore_16 iconst_17 iconst_08 idiv9 istore_2
10 goto 25 (+15)
13 astore_2
14 aload_2
15 invokevirtual #5 <java/lang/Exception.printStackTrace : ()V>
18 getstatic #6 <java/lang/System.out : Ljava/io/PrintStream;>
21 aload_1
22 invokevirtual #7 <java/io/PrintStream.println : (Ljava/lang/String;)V>
25 getstatic #6 <java/lang/System.out : Ljava/io/PrintStream;>
28 aload_1
29 invokevirtual #7 <java/io/PrintStream.println : (Ljava/lang/String;)V>
32 return

异常表

3.说明

代码一般看得懂,从字节码说明,字节码和代码一起看,看的更清晰。
①0、2声明变量s。
②3到10是try部分代码,如果这段代码之间有Exception的异常,就从发生异常的位置跳到13。注意:跳之前的代码也是执行了的。
③如果没发生异常,在10的位置就直接跳到25,并继续执行后面的字节码。
④如果发生了异常,就跳到13,并继续执行13后面的字节码。

4.执行结果

异常打印的栈内容省略了。

java.lang.ArithmeticException: / by zero
222
222

相关文章:

记录学习--字节码解析try catch

1.示例代码 Testpublic void someTest() {String s "111";try {s "222";int i 1/0;} catch (Exception e){e.printStackTrace();System.out.println(s);}System.out.println(s);}2.示例代码对应的字节码 0 ldc #2 <111>2 astore_13 ldc #3 <22…...

多线程与高并发——并发编程(3)

文章目录 三、锁1 锁的分类1.1 可重入锁、不可重入锁1.2 乐观锁、悲观锁1.3 公平锁、非公平锁1.4 互斥锁、共享锁2 深入synchronized2.1 类锁、对象锁2.2 synchronized的优化2.3 synchronized实现原理2.4 synchronized的锁升级2.5 重量级锁底层 ObjectMonitor3 深入ReentrantLo…...

关于内网主备+https

先openssl证书 整体流程为&#xff1a; 1、页面访问为https&#xff0c;在电脑修改hosts文件&#xff0c;如域名为 babaozhou.com, 则配置为 ip1 babaozhou.com&#xff0c;ip2 babaozhou.com&#xff1b; 也就是说同域名关联两个ip&#xff0c;这样如果服务器1ping不通了则可…...

java入坑之网络编程

一、 网络基础知识 1.1网卡 1.2IP地址 1.3端口 1.4保留IP 1.5网络协议 二、UDP 编程 2.1相关概念 计算机通讯&#xff1a;数据从一个IP的port出发&#xff08;发送方&#xff09;&#xff0c;运输到另外一个IP的port&#xff08;接收方&#xff09; UDP&#xff1a;无连接无…...

A Survey on Large Language Model based Autonomous Agents

本文是LLM系列的文章&#xff0c;针对《A Survey on Large Language Model based Autonomous Agents》的翻译。 基于大模型的自动agents综述 摘要1 引言2 基于LLM的自动代理构建3 基于LLM的自动代理应用4 基于LLM的自动代理评估5 相关综述6 挑战6.1 角色扮演能力6.2 广义与人对…...

Integer、Long 等包装类 == 值判断、地址判断与缓存

先看下以下代码和输出 public static void main(String[] args) throws Exception{Integer a-128;Integer aa-128;System.out.printf("aaa? %s \n",aaa);Integer b127;Integer bb127;System.out.printf("bbb? %s \n",bbb);Integer c128;Integer cc128;Sy…...

numpy学习:reshape和resize

.reshape 与 .resize reshape&#xff1a;有返回值&#xff0c;所谓有返回值&#xff0c;即不对原始多维数组进行修改&#xff1b; resize&#xff1a;无返回值&#xff0c;所谓无返回值&#xff0c;即会对原始多维数组进行修改&#xff1b;...

JPA在不写sql的情况下实现模糊查询

本文已收录于专栏 《Java》 目录 背景介绍概念说明单字段模糊匹配&#xff1a;多字段模糊匹配&#xff1a; 实现过程代码实现1.写一个实体类去实现Specification接口&#xff0c;重写toPredicate方法2.定义一个接口去继承JpaRepository接口&#xff0c;并指定返回的类型和参数类…...

Java设计模式之单例模式

单例模式是一种设计模式&#xff0c;它的目的是确保一个类只有一个实例&#xff0c;并提供一个全局访问点来访问该实例。这个模式通常在需要控制资源访问权、限制实例化数量或实现全局共享时使用。 在实现单例模式时&#xff0c;一般会定义一个私有的构造函数&#xff0c;以防…...

Vue3 学习

基础 js:https://www.bilibili.com/video/BV15T411j7pJ/?spm_id_from333.337.search-card.all.click&vd_source9747207be61edfe4ec62226fc79b3589 官方文档&#xff1a; https://cn.vuejs.org/ 版本之间差异在关于---》版本发布 https://cn.vuejs.org/about/release…...

Error obtaining UI hierarchy Error taking device screenshot: EOF/NULL 解决办法

RT&#xff1a;Error obtaining UI hierarchy Error taking device screenshot: EOF/NULL 解决办法 关于monitor开发神器我就不多说了&#xff0c;但是假如我们在开发中遇到如上问题该怎么处理呢&#xff1f;别慌下面会有方法&#xff0c;不过不是对任何机型都有效&#xff0c…...

Java框架之王:Spring的崛起与进化

在Java世界中&#xff0c;Spring框架无疑已经成为了一个传奇。它为开发者提供了强大的工具和丰富的功能&#xff0c;使得构建高质量、可扩展的Java应用程序变得轻松便捷。本文将带您领略Spring的魅力&#xff0c;以及它在过去几年中的崛起和进化。 一、Spring的崛起 Spring框…...

【位运算】位运算常用技巧总结

目录 前言 一.常见的小问题 1.给定一个数n,确定它的二进制表示中的第x位是0还是1 2.给定一个数n&#xff0c;将它的二进制表示中的第x位修改成1 3.给定一个数n&#xff0c;将它的二进制表示中的第x位修改成0 4.给定一个数n&#xff0c;提取它的二进制表示中最右侧的1&…...

【STM32】IIC使用中DMA传输时 发送数据总少一个的问题

问题描述 在使用STM32 I2C数据发送过程中&#xff0c;发现每轮实际发送出去的数据总比在DMA配置中设定的传输数据个数要少一个。比方说&#xff1a;DMA配置里设定的传输数据个数是10个&#xff0c;结果发现在总线上只能发出9个&#xff0c;经过进一步发现是少了最后一个数据。…...

记录layui数据表格使用文件上传按钮

一、前言 虽然用到这种的情况不多&#xff0c;但是还是记录下 二、相关代码 <!DOCTYPE html> <html> <head><meta http-equiv"Content-Type" content"text/html;charsetutf-8"/><meta name"renderer" content&quo…...

c++之枚举

1、背景 在开发代码的过程中&#xff0c;vector类型数组a的index取了一个枚举值CTR&#xff0c;eg&#xff1a;a[CTR]&#xff0c;刚开始以为是map类型&#xff0c;后面看不是&#xff0c;简单的看了下c的enum类型&#xff0c;原来enum按顺序默认为数字。 2、enum简介 2.1、…...

LeetCode 热题 100(七):105. 从前序与中序遍历序列构造二叉树、14. 二叉树展开为链表

题目一&#xff1a; 105. 从前序与中序遍历序列构造二叉树https://leetcode.cn/problems/construct-binary-tree-from-preorder-and-inorder-traversal/ 思路&#xff1a;依据前序遍历的根左右和中序遍历的左根右&#xff0c; 且根左长度&#xff1d;左根 代码&#xff1a; …...

机器学习笔记 - 在表格数据上应用高斯混合GMM和网格搜索GridSearchCV提高分类精度的机器学习案例

1、需求及数据集说明 这是一项二分类任务,评估的是分类准确性(正确预测的标签百分比)。训练集有1000个样本,测试集有9000个样本。你的预测应该是一个9000 x 1的向量。您还需要一个Id列(1到9000),并且应该包括一个标题。格式如下所示: Id,Solution 1,0 2,1 3,1 ... 900…...

【UE 材质】模型部分透明

材质节点如下&#xff0c;这里简单解释一下。首先通过“Mask”节点将"Texture Coordinate" 节点中的“G”通道分离出来&#xff0c;然后通过“if”节点进行判断&#xff0c;当值小于0.5时为透明&#xff0c;当颜色不小于5时为不透明。可以通过一个参数来控制模型透明…...

Web3 社交平台如何脱颖而出?我们和 PoPP 聊了聊

能够颠覆 Web2 传统模式的社交产品有着怎样的特征&#xff1f;PoPP 作为专注于 Web3 的私域流量变现平台&#xff0c;为开发者和用户提供了社交产品发展的新路径&#xff0c;让社区用户充分实现互动交流&#xff0c;着力于创作内容的激励与变现。事实上&#xff0c;面对 Web3 社…...

【多通道滤波】基于最小均方(McFxLMS)算法用于自适应多通道有源噪声控制(MCANC)应用研究(Matlab代码实现)

&#x1f4a5;&#x1f4a5;&#x1f49e;&#x1f49e;欢迎来到本博客❤️❤️&#x1f4a5;&#x1f4a5; &#x1f3c6;博主优势&#xff1a;&#x1f31e;&#x1f31e;&#x1f31e;博客内容尽量做到思维缜密&#xff0c;逻辑清晰&#xff0c;为了方便读者。 ⛳️座右铭&a…...

摆脱论文困扰!!2026 最新降AIGC软件测评与推荐

2026年真正好用的AI论文降重与改写工具&#xff0c;核心看降重效果、去AI味、格式保留、学术适配四大指标。综合实测&#xff0c;千笔AI、ThouPen、豆包、DeepSeek、Grammarly 是当前最值得推荐的梯队&#xff0c;覆盖从免费到付费、从中文到英文、从文科到理工的全场景需求。 …...

智慧无人机航拍巡检数据集 红外行人车辆识别数据集 行人车辆计数图像识别 红外建筑物识别 夜间低光环境下视觉感知算法 安防、交通等领域红外视觉任务 第10355期

深度学习数据集 README数据集核心信息总览维度详情数据类别目标检测类&#xff08;建筑物、人们、车辆、路灯、通用物体、单个行人&#xff0c;共 6 类&#xff09;数据数量图像样本共 60 张&#xff0c;包含训练、验证、测试所需的基础样本量数据集格式图像格式&#xff08;支…...

ncmdumpGUI:解锁网易云音乐NCM格式的3步可视化解决方案

ncmdumpGUI&#xff1a;解锁网易云音乐NCM格式的3步可视化解决方案 【免费下载链接】ncmdumpGUI C#版本网易云音乐ncm文件格式转换&#xff0c;Windows图形界面版本 项目地址: https://gitcode.com/gh_mirrors/nc/ncmdumpGUI 你是否曾在网易云音乐下载了心爱的歌曲&…...

OpenClaw+Hermes +Vibe Coding本地部署|论文自动化|知识工作流

在人工智能快速重塑科研范式的背景下&#xff0c;大语言模型、Agent系统与自动化科研工作流&#xff0c;正在深刻改变文献阅读、代码开发、数据分析、论文写作与科研协作的底层方式。面对模型快速迭代、工具形态持续演进的新局面&#xff0c;科研人员亟需从“会使用AI”进一步升…...

意识的“调谐客观还原”理论

“调谐客观还原”理论&#xff0c;通常称为 Orch-OR&#xff0c;是诺贝尔物理学奖得主罗杰彭罗斯与麻醉学家斯图尔特哈梅罗夫于20世纪90年代初提出的一种极具争议的意识假说。该理论的核心观点是&#xff1a;意识并非产生于神经元之间的经典电化学连接&#xff0c;而是源于神经…...

VLA已死,WAM当立:机器人的GPT时刻到了吗?

就在刚刚过去的4月底&#xff0c;红杉资本举办的AI Ascent 2026大会上&#xff0c;英伟达机器人方向负责人Jim Fan抛出了一个极具争议的论断&#xff1a;“视觉语言模型VLA已死&#xff0c;世界动作模型WAM当立。”他还预测&#xff0c;未来一到两年内&#xff0c;机器人学习的…...

水下叶轮脉动压力测试:Kulite压力传感器强在哪?安装门槛怎么破?

水下叶轮脉动压力测试这事&#xff0c;干过的朋友都懂——看着挺简单&#xff0c;上手哪一步都可能翻车。传感器防水、空间狭小、叶轮旋转、信号采集困难——随便拎出一个&#xff0c;都够让人头疼的。折腾了一圈&#xff0c;有一个型号被反复验证为绕不开的经典&#xff1a;Ku…...

软件测试的“测开分离”趋势,是机遇还是陷阱

一、测开分离&#xff1a;软件测试行业的新变局在软件测试行业的发展历程中&#xff0c;角色的边界一直在悄然演变。从早期手工测试独挑大梁&#xff0c;到自动化测试兴起后测试人员开始涉足简单代码编写&#xff0c;再到如今测试开发工程师岗位的独立&#xff0c;测试与开发的…...

剪映专业版教程:制作直接选择排序算法原理演示视频

前言 今天教大家用剪映制作直接选择排序算法的原理演示视频。直接选择排序的原理是&#xff1a;在同一个数组中&#xff0c;先挑一个最小的&#xff0c;跟第一位交换&#xff1b;待排序下标往后移到第二位&#xff0c;从这里开始往后找一个最小的&#xff0c;跟第二位交换&…...