首页 > 编程语言 >《Java编程思想第四版》学习笔记22

《Java编程思想第四版》学习笔记22

时间:2023-09-03 20:34:09浏览次数:45  
标签:Exception Java 22 句柄 第四版 catch Throwable main 违例

注意下面这两句话:

1、针对 g()和 main(), Throwable 类必须在违例规格中出现,因为 fillInStackTrace()会生成一个 Throwable对象的句柄。由于 Throwable 是 Exception 的一个基础类,所以有可能获得一个能够“掷”出的对象(具有Throwable 属性),但却并非一个 Exception(违例)。因此,在 main()中用于 Exception 的句柄可能丢失自己的目标。为保证所有东西均井然有序,编译器强制 Throwable 使用一个违例规范。

                                                                                                                                              P.268

2、注意 Throwable 在任何违例规范中都不是必需的

                                                                                                                                               P.269

那么,把catch语句中的违例类型写成Throwable“catch(Throwable e)”是不是就能捕获所有违例?

标签:Exception,Java,22,句柄,第四版,catch,Throwable,main,违例
From: https://blog.51cto.com/u_16183536/7342974

相关文章

  • Java面试之用一个栈实现另一个栈的排序
    一题目一个栈中元素的类型为整数,现在想将该栈从顶到底按从大到小的顺序排序,只许申请一个栈。除此之外可以申请新的变量,但不能申请额外的数据结构。如何完成排序?二要求将要排序的栈记为stack,申请的辅助栈记为help。在stack上执行pop操作,弹出的元素记为cur。1.如果cur小于或等于hel......
  • 无涯教程-JavaScript - TTEST函数
    TTEST函数取代了Excel2010中的T.TEST函数。描述该函数返回与学生t检验相关的概率。使用TTEST来确定两个样本是否可能来自均值相同的相同两个基础总体。语法TTEST(array1,array2,tails,type)争论Argument描述Required/OptionalArray1Thefirstdataset.Required......
  • Java中使用ProcessBuilder执行命令
    在Java中我们可以使用ProcessBuilder来创建一个进程并执行命令。在使用前我们首先了了解下两个程序。一、认识命令行解释程序不论在windows中还是linux中都可以通过命令行方式来执行某些程序或脚本,而解析命令行的程序被称为shell,其本身是一种命令行解释器,用于与操作系统进行交互和......
  • LeetCode952三部曲之二:小幅度优化(137ms -> 122ms,超39% -> 超51%)
    欢迎访问我的GitHub这里分类和汇总了欣宸的全部原创(含配套源码):https://github.com/zq2599/blog_demos本篇概览本文是《LeetCode952三部曲》系列之二,在前文中,咱们详细分析了解题思路,然后按照思路写出了代码,在LeetCode提交成功,成绩如下图所示,137ms,超过39%不得不说这个成绩......
  • Java对象从创建到回收全过程
    先了解下Java虚拟机内存组成,当Java虚拟机启动后,会将系统分配给JVM的空间逻辑上划分为堆、虚拟机栈、本地方法栈、方法区、程序计数器五个部分,如下图所示:堆:放置new出来的对象、数组虚拟机栈:线程运行前,会给其分配一个线程栈空间,线程中每个方法执行都会生成一个栈帧放入线程栈中,栈帧里......
  • Java内存模型(JMM)详解
    面试官:讲讲什么是JMMJMM(Java内存模型)详解1什么是JMM?JMM就是Java内存模型(JavaMemoryModel)JMM是一个抽象的概念,他描述的是和多线程相关的一组规范,需要各个JVM的实现来遵守JMM规范,以便于开发者可以利用这些规范,更方便的开发多线程程序。这样一来,即使同一个程序在不同的虚拟......
  • 无涯教程-JavaScript - TINV函数
    TINV函数取代了Excel2010中的T.INV.2T函数。描述该函数返回学生t分布的两尾逆。语法TINV(probability,deg_freedom)争论Argument描述Required/OptionalProbabilityTheprobabilityassociatedwiththetwo-tailedStudent'st-distribution.RequiredDeg_freedom......
  • 22.执行计划
    SQL执行缓慢有很多原因,有时候是数据库本身原因,比如latch争用,或者某些参数设置不合理。有时候是SQL写法有问题,有时候是缺乏索引,可能是因为通过统计信息过期或者没收集直方图,可可能是优化器本身并不完善或者优化器自身BUG而导致的性能问题。如果是数据库自身原因导致SQL缓......
  • java基础-方法method-day05
    1.语法[修饰符]返回值类型方法名(形参列表){逻辑主体}publicclassTestMethod01{ publicstaticintadd(intnum1,intnum2){ intsum=0; sum+=num1; sum+=num2; returnsum; } publicstaticvoidmain(String[]args){ intsum1=add(10......
  • JavaGuide基础3
    异常Exception和ErrorException:程序本身可以处理的异常,可以通过catch来进行捕获。Exception又可以分为CheckedException(受检查异常,必须处理)和UncheckedException(不受检查异常,可以不处理)。Error:Error属于程序无法处理的错误,不建议通过catch捕获。例如Jav......