第十二章
12.1:它能使方法抛出一个异常给它的调用者,并由调用者处理该异常。如果没有这个能力,那么被调用的方法就必须自己处理异常或者终止该程序。被调用的方法通常不知道在出错的情况下该做些什么,这是库方法的一般情况。库方法可以检测出错误,但是只有调用者才知道出现错误时需要做些什么。异常处理最根本的优势就是将检测错误(由被调用的方法完成)从处理错误(由调用方法完成)中分离出来。
12.2:第一条语句:System.out.println(1 / 0);会抛出异常。
12.3:将Long.MAX_VALUE加上1会超出long值的范围,但是当前的java没有把这种情况报告为例外。
12.4:出现异常时,JVM会抛出异常,如果需要捕获异常,可以编写try-catch语句。
12.5:如果value = 30,则输出结果为:
Value is too small
Continue after the catch block

如果value = 50,则输出结果为:
Continue after the catch block
12.6:输出结果为:
a)0 1
b)0
12.7:Throwable 类是所有异常类的根。所有的 Java 异常类都直接或者间接地继承自
Throwable。这些异常类可以分为三种主要类型:系统错误、异常和运行时异常。
12.8:将抛出异常名为:
a)ArithmeticException
b)IndexOutOfBoundsException
c)IndexOutOfBoundsException
d)ClassCastException
e)NullPointerException
f)No exception
12.9:声明异常的目的是告诉java运行时系统可能会出现的异常情况,可以在方法声明中使用抛出关键字声明异常,可以声明多个异常,用逗号隔开。
12.10:由于这个方法抛出 RuntimeException (免检异常)子类 rilegalArgumentException的一个实例,所以,如果不使用 try语句,这个测试程序也能编译。如果方法抛出 RuntimeException和 Error 之外的异常(即必检异常),那么此方法就必须在 try-catch 块内调用。
12.11:使用方法中抛出语句抛出异常,即throw(exceptionName),不可以在throw语句中抛出多个异常。
12.12:关键字throw是抛出异常的关键字,关键字throws是声明异常的关键字。
12.13:
1)不会执行statement3.
2)不会执行statement4,因为try语句执行完后程序就结束了。
3)会执行statement4.
12.14:显示:RuntimeException
12.15:显示:ArithmeticException
12.16:显示:RuntimeException in method()
After the method call
12.17:getMessage()在Throwable类中被定义,以返回描述异常的字符串。
12.18:若要向控制台显示跟踪信息,可以执行的操作。
12.19:没有异常发生时,try-catch 块的存在不会引起额外的系统开销。
12.20:代码修改为:
public void m(int value) throws Exception{
if(value < 40)
throw new Exception(“value is too small”);
}
12.21:
1)如果没有异常发生,会执行statement4,也会执行statement5.
2如果异常类型是 Exceptionl, 会执行 statement4,也会执行 statements5.
3如果异常不是类型 Exceptionl,会执行 statement,不会执行 statements5.
12.22:该方法是正确的,但是有一点,不要把异常处理用作简单的逻辑测试。
public static Boolean isNumeric(String token) {
for (int I = 0; I < token.length(); i++) {
if (!(token.chatAt(i) >= ‘0’&& token.chatAt(i) <= ‘9’)) {
return false;
}
}
return true;
}
12.23:

  1. 如果没有异常发生,会执行语句 statement4,也会执行语句 statement5。
  2. 如果异常类型是 Exceptionl,会执行 statement4,也会执行 statement5.
  3. 如果异常类型是 Exception2,会执行 statement4 ,不会执行 statement5。
  4. 如果异常类型不是 Exceptionl以及 Exception2 类型的,那么会执行 statement4 ,不会执行 statement5 。
    12.24:输出结果为:
    java.lang.Exception: New info from methodl
    at ChainedExceptionDemo.methodlfChainedExceptionDemo.java:16)
    at ChainedExceptionDemo.main(ChainedExceptionDemo.java:4)
    12.26:输出结果为:
    Exception in method()
    Exception in main
    12.27:在 Windows 中目录的分隔符是反斜杠()。但是在 Java 中,反斜杠是一个特殊的
    字符,应该写成 \的形式,故改为:new File(“c:\book\test.dat”);
    12.28:创建一个file对象,利用file.exists()表示文件是否存在,file.delete()表示删除文件,file.renameTo(File)表示重命名文件名,使用file.length()表示获得文件的大小。
    12.29:不能使用File类进行输入/输出,File类可用于获取文件的属性和操作文件;不是创建一个 File 对象就是在磁盘上创建一个文件。
    12.30:创建对象 PrintWriter output = new PrintWriter(FileName);以向文件写数据。此语句可能引发异常,java迫使你编写代码来处理异常,处理它的一种方法是在方法声明中声明抛出异常。如果不调用close()方法,则可能无法正确保存数据。
    12.31:输出结果为:
    Amount is 32.320000 3.232000e+01
    Amount is 32.3200 3.2320e+01
    False
    Java
    12.32:
    public class Test {
    public static void main (String[] args) throws Exception {
    try(java.io.PrintWriter output = new java.io.PrintWriter(“temp.txt”)) {
    output.printf(“amount is %f %e\r\n”, 32.32, 32.32);
    output.pr1ntf(“amount 1s %5.4f %5.4e\r\n, 32.32,32.32);
    output.printf(”%6b\r\n",(1 > 2));
    output.printf(“%6s\r\n”,“java”);
    output.close();
    }
    }
    12.33:Scanner input = new Scanner(FileName);从文件读取数据。Main方法中的语句可能会引发异常,java你迫使编写代码来处理异常,处理异常的一种方法就是在方法声明中声明抛出异常。如果不调用close()方法,则可能无法正确保存数据。
    12.34如果试图对一个不存在的文件创建 Scanner,程序将会出现异常;如果试图对一个已经存在的文件创建 PrintWriter,则现有的文件内容将消失。
    12.35:不同平台上的行分隔符不同,windows平台上的行分隔符是\n.
    12.36:intValue = 45; doubleValue = 57.8; line = ‘’‘7’‘8’‘9’。
    12.37: intValue = 45; doubleValue = 57.8; line = ‘’
    12.38:创建一个URL对象,并使用行动Scanner(url.openStream())创建一个Scanner对象,用于读取URL流中的数据。
    12.39:有可能包含重复的URL。假设链接1不在listOfTraverseURL中,但它可能在一个页面中出现不止一次。这样的重复链接1将添加到listOfPendingURL中。

《Java语言程序设计》(基础篇原书第10版)第十二章复习题答案相关推荐

  1. Java语言程序设计 基础篇 原书第10版 ,梁勇著,百度云链接及密码

    一本好书,对java小白来说是一本非常不错的书.第一次分享,请大家多多指教, Java语言程序设计 基础篇 原书第10版 ,梁勇著 链接:https://pan.baidu.com/s/1-MN_AS ...

  2. java第十版基础篇答案第九章_《Java语言程序设计》(基础篇原书第10版)第九章复习题答案...

    第九章 9.1:类为对象定义属性和行为,对象从类创建. 9.2:public class ClassName { } 9.3:ClassName v; 9.4:new ClassName(); 9.5 ...

  3. 《Java语言程序设计》(基础篇原书第10版)第八章复习题答案

    第八章 8.1:int[] array = new int[4][5]; 8.2: 二维数组的行可以有不同的长度. 8.3:输出结果为:array[0][1] is 2 8.4: int[][] r ...

  4. JAVA程序设计第十版梁勇著答案_0031 Java学习笔记-梁勇著《Java语言程序设计-基础篇 第十版》英语单词...

    第01章 计算机.程序和Java概述 CPU(Central Processing Unit)*中央处理器 Control Unit*控制单元 arithmetic/logic unit /ə'rɪθ ...

  5. [转载] java语言程序设计-基础篇

    参考链接: Java中的决策制定(if,if-else,switch,break,continue,jump) 第1章,计算机.程序和Java概述 包括[每个java初学者都应该搞懂的问题] http ...

  6. java语言程序设计-基础篇

    第1章,计算机.程序和Java概述 包括[每个java初学者都应该搞懂的问题] http://blog.csdn.net/haobo920/article/details/5784990 1,java ...

  7. Java语言程序设计基础篇原书第十版第二章编程练习题答案

    程序如有问题,及时联系博主哦~博主会贴出所有带有星号的题目,以及一些典型的例子,希望能够帮助到同学们,也希望同学们都学好java语言. 2.1将摄氏温度转换为华氏温度 package nameyu;i ...

  8. 《java语言程序设计 基础篇》原书第10版 PDF版 梁勇著 戴开宇译

    方式一:百度网盘 网址:https://pan.baidu.com/s/1eg3iCmnFj-r8x_RlmLkKcw 提取码:cx32 或者: 方式二:腾讯微云 链接:https://share.w ...

  9. Java语言程序设计(基础篇) 第十一章 继承和多态

    第十一章 继承和多态 11.1 引言 面向对象的编程允许你从已经存在的类中定义新的类,这称为继承. 11.2 父类和子类 1.继承使得你可以定义一个通用的类(既父类),之后扩充该类为一个更加特定的类( ...

  10. 《java语言程序设计-基础篇》笔记一

    第一章.计算机.程序和java概述 中央处理器 CPU由两部分组成:控制单元和算术/逻辑单元 控制单元用于控制和协调除CPU之外其他组件的动作 算术/逻辑单元用于完成数值运算和逻辑运算 每台计算机都有 ...

最新文章

  1. 变频电源要怎么测定额定容量
  2. php 长短字符串转换,将php的数组按照字符串长短进行排序
  3. 传统网站移动化的难点
  4. [系统集成] RT(Request Tracker)执行自定义脚本及发送微信、短信的实现方法
  5. 《系统集成项目管理工程师》必背100个知识点-96我国企业信息化发展的战略要点...
  6. artificial intelligence courses
  7. hdu 1087 最大递增和
  8. Cisco C2960 升级IOS
  9. web元件库、axure元件库、通用元件库、常用web组件、常用表单、框架、数据表单、导航栏、边框、图标、列表、日期时间选择器、评分组件、穿梭框、输入框、步骤条、图表组件、数据可视化、后台模板、时间轴
  10. Vue学习笔记之16-tarbar地开发思路
  11. 第11章—使用对象关系映射持久化数据—SpringBoot+SpringData+Jpa进行查询修改数据库...
  12. 一些经久不衰的linux 视频教程列表
  13. python 获取复数的实部和虚部
  14. 原创分享 | 如何从非技术层面实现数据驱动
  15. 音乐播放器制作 (HTML + CSS + JavaScript)
  16. 项目经理做什么工作的,每个公司不一样吗?
  17. 计算机音乐b型谱简单,《神奇秘谱》琴曲的调弦法
  18. html中去除下划线,下划线怎么取消?
  19. web期末大作业-前端网页--H5--海贼王动态网页源码-海贼王网页
  20. 抓包工具 - Wireshark(详细介绍与TCP三次握手数据分析)

热门文章

  1. java判断运算符_java运算符,判断符(了解)
  2. STL中的所有算法(70个)
  3. IMPLEMENT_DYNCREATE(CFileView, CView)
  4. 如何使用mapinfo对地图分层设色并导出为图片
  5. 不同行业的软件都爱用什么编程语言开发?
  6. 自动化测试是测试人员的遮羞布?
  7. Windows程序设计_Chap03_窗口与消息_学习笔记
  8. 小甲鱼windows程序设计(50讲)
  9. 流氓软件的完全卸载的一些方法
  10. CSS外链怎么写,css外链式基本写法是什么