首页 > 其他分享 >10.18 动手动脑

10.18 动手动脑

时间:2023-10-18 22:25:29浏览次数:30  
标签:java 动手 动脑 程序 try 10.18 finally catch 执行

AboutException.java

运行结果

 运行结果看出这里是程序发生异常,被0除的算术运算,这个错误发生后程序会结束,不会向下运行

Error类称为错误类,它表示Java运行时产生的系统内部错误或资源耗尽的错误,是比较严重的,仅靠修改程序本身是不能恢复执行的,如系统崩溃,虚拟机错误等。

CatchWho.java

运行结果

ArrayIndexOutOfBoundsException内层try-catch
发生ArithmeticException

CatchWho2.java程序运行结果

ArrayIndexOutOfBoundsException/外层try-catch

当有多个嵌套的try…catch…finally时,要特别注意finally的执行时机。

EmbedFinally.java运行结果是

 

程序未进入try{}块的执行,如在try之前出现运行时异常,程序终止。

程序进入到try{}和catch{}块的执行,但是在try{}或者catch{}块碰到了System.exit(0)语句,jvm直接退出。 finally{}块不会执行
当try和catch中有return时,finally仍然会执行;
finally是在return后面的表达式运算后执行的(此时并没有返回运算后的值,而是先把要返回的值的引用地址保存起来,而不管finally中的代码怎么样,最后返回的都是这个引用地址(或者说这个引用地址指向的对象)

 SystemExitAndFinally.java

运行结果

程序未进入try{}块的执行,如在try之前出现运行时异常,程序终止。

程序进入到try{}和catch{}块的执行,但是在try{}或者catch{}块碰到了System.exit(0)语句,jvm直接退出。 finally{}块不会执行
当try和catch中有return时,finally仍然会执行;
finally是在return后面的表达式运算后执行的(此时并没有返回运算后的值,而是先把要返回的值的引用地址保存起来,而不管finally中的代码怎么样,最后返回的都是这个引用地址(或者说这个引用地址指向的对象)

无论try块是否发生异常,finally块中的代码都会被执行。finally块是用于保证在try块中可能发生异常的情况下,能够执行一些清理工作或者释放资源的重要机制。

 

 

标签:java,动手,动脑,程序,try,10.18,finally,catch,执行
From: https://www.cnblogs.com/lllyclh/p/17773486.html

相关文章

  • 大二打卡(10.18)
    今天做了什么:背了英语笔记,少背了一页,结果就导致老师听写的时候有不会的,还得背,不能再像这次一样,临时抱佛脚突击背诵三四十分钟今天遇到什么问题:英语还得背,建民测试还得搞明天怎么做:上完一天的课,晚上熬一宿把建民测试搞完......
  • 23.10.18(常用Java异常处理情况整合)
    在JAVA项目中,异常处理是一项非常重要的任务。合理处理异常能够提高程序的稳定性和可靠性,保证程序的正常运行。下面是关于JAVA项目中常用的异常处理情况的总结:1.空指针异常(NullPointerException):在使用一个空对象的成员变量或方法时会抛出该异常。可以通过判断对象是否为空来避免......
  • 10.18(随机出题Web页面)
    今天完成了javaweb的出题系统,比较简陋jsp<%@pagecontentType="text/html;charset=UTF-8"language="java"%><!DOCTYPEhtml><html><head><metacharset="UTF-8"><title>添加信息</title>&l......
  • 10.18闲话
    今天没模拟赛,爽爽爽......
  • 23.10.18 Java当中的异常处理
    Java当中的异常处理在Java中,异常是指在程序执行期间发生的错误或异常情况,可以分为两种类型:受检异常(CheckedException)和非受检异常(UncheckedException)。受检异常:受检异常是指需要在代码中显式处理的异常,通常继承自Exception类的子类。例如,IOException和SQLException是受检异......
  • 10.18日记
    //给每个主节点添加点击事件监听器mainNodes.forEach(mainNode=>{  mainNode.addEventListener('click',(e)=>{    //阻止默认链接行为    e.preventDefault();    //切换子菜单的显示状态    constsubMenu=mainNode.next......
  • 10.18
    今日代码:200行今日时间:4小时学习内容:今天做了软件构造的作业小学数学题的编程MathPaper.javapackagecom.stdu.www; importjava.util.ArrayList;importjava.util.List; publicclassMathPaper{  privateList<MathQuestion>questions;   publicMathP......
  • 10.18每日总结
    将数据库作业写完了,巩固了hive的相关知识;学习了软考的相关知识点;重新捋了捋自己的逻辑;学习了springboot的相关内容;背单词;明天预计将逻辑实现;将部门留下的一篇推文写了;背单词;学习软考;学习新的技术;规划一下;......
  • 10.18算法
    3的幂给定一个整数,写一个函数来判断它是否是3 的幂次方。如果是,返回true;否则,返回false。整数n是3的幂次方需满足:存在整数x使得n==3x 示例1:输入:n=27输出:true示例2:输入:n=0输出:false示例3:输入:n=9输出:true示例4:输入:n=45输出:false 提示:-231<=n......
  • 《动手学深度学习 Pytorch版》 9.1 门控循环单元(GRU)
    我们可能会遇到这样的情况:早期观测值对预测所有未来观测值具有非常重要的意义。考虑一个极端情况,其中第一个观测值包含一个校验和,目标是在序列的末尾辨别校验和是否正确。在这种情况下,第一个词元的影响至关重要。我们希望有某些机制能够在一个记忆元里存储重要的早期信息。如......