Class为类提供运行时信息,如名字、类型、以及父类等。Runtime类可直接访问运行时资源。

4-15 怎样表示日期与时间数据?怎样引用java.util包的类?

Java以一个长整型表示一个日期,【答】该长整型表示从格林尼治时间1970-1-1 00:00:00 开始至某时刻的累积毫秒数。

4-16 泛型类有什么作用?在什么情况下需要使用泛型类?

【答】泛型的本质是参数化类型,也就是说所操作的数据类型被指定为一个参数,这种参数类型可以用在类、接口、和方法的创建中,分别被称为泛型类、泛型接口、泛型方法。泛型类引入的好处不仅在于减少代码量,还在于提供了编译时期数据类型的检查功能,可以提前预知错误的发生,减少代码安全性,二是减少了强制转换类型。

第5章 异常处理

5-1 程序中的错误有哪几种?分别能够在什么时刻被发现?

【答】 程序错误按照性质可分为3类:语法错、语义错、逻辑错。

1 语法错:违反语法规范的错误成为语法错( syntax error ),这类错误通常在编译时发现,又称为编译错,如标识符未声明、表达式中运算符与操作数类型不兼容、变量赋值时的类型与声明时的类型不匹配、括号不匹配、语句末缺少分号等。

2 语义错:如果在程序的语法上正确,但在语义上存在错误,则称为语义错( semantic error),又称为运行错(run-time error),语义错不能被编译系统发现,只有到程序运行时才能被发现,如输入数据格式错、除数为0错、给变量赋予超出其范围的值错等。

3 逻辑错:如果程序通过编译,可运行,但运行结果与期望值不符,则这类错误称为逻辑错(logic error),例如,由于循环条件不正确而没有结果,循环次数不对等因素导致计算结果不正确等。

5-2 Java为什么要采用异常处理机制?Java的异常处理是怎样实现的?异常处理机制能够

解决程序中遇到的所有错误吗?哪些错误不是异常处理能够解决的?

【答】 异常处理和捕获和处理运行时错误的一种机制。异常处理机制使程序具有处理错误的能力。即使发生了运行错,应用程序能够捕获异常并及时处理异常,使程序从运行错误中很好地恢复并继续运行,而不会导致程序运行非正常终止。而且如果当前方法没有能力处理异常,还可以将异常转交给调用者处理。异常处理机制将运行时错误封装成若干错误类和异常类,并提供异常处理语句用于处理在程序中实现对运行时错误的发现和及时处理。异常处理机制并不能解决程序中的所有错误,例如内存溢出、栈溢出等。

5-3 请说出5个Java的异常类。

【答】 算术异常ArithmeticException、空对象异常NullPointerException、类型强制转换异常ClassCastException、负数组长度异常NegativeArraySizeException、数组下标越界异常 ArrayIndexOutOfBundsException等

5-4 请问运行没有main()方法的类会怎样?

【答】 此类错误是Error类,当运行没有main()方法的类时,则产生类定义未找到的错误(NoClassDefFoundError)。

5-5 举例说明你在调试程序时,遇到过哪些错误和异常,采取什么办法解决问题的。 【答】1.无效的游标状态

修改:首先查看ResultSet是否为空,若为空则修改之;其次,也是我遇到的,就是:举个例子说明,如下

rs.getString(1);

rs.getString(3);//注意3和2的顺序颠倒了 rs.getString(2);//此时会出现异常

ResultSet只能按顺序访问列的值,说明:不能颠倒,我猜想这可能是JDBC的一个BUG

吧。不过后来我看.NET中的DataReader类后才恍然大悟,原来,ResultSet的游标每向后移动,前面的数据就会被丢弃掉,这样做有利于提高访问速度。

2. ResultSet is closed

原因:一个Statement只能维持一个ResultSet为打开状态,后面的覆盖前面的,举个例子:

ResultSet rs1 = stmt.excuteQuery(); ResultSet rs2 = stmt.excuteQuery();

String s = rs1.getString(1);//出现异常,因为rs1已经被关闭 3. 连接占线导致另一个 hstmt

原因:一个Connection只能维持一个Statement为打开状态 一个例子:

Statement stmt1 = con.createStatement(); Statement stmt2 = con.createStatement(); stmts.excuteQuery(sql);//出现异常 其他异常 空指针异常

空指针异常应该说是最常见的异常了 原因主要有以下几点:

1.未初始化的变量(虽然已经声明)

2.使用了未初始化的对象(虽然已经声明)

注:引起这个异常的根本原因有可能隐藏的很深,空指针异常只不过是个表象而已(又被不幸的我遇到了).

5-6 如何处理除数为0异常?

【答】 进行除数运算时,先判断除数是否为0,若为0,则跳出提示。

5-7 怎样处理数组下标异常?

【答】 使用数组前先,判断下标是否小于数值长度,若不小于则提示数组下标有误。

5-8 说明采用什么语句能够捕获并处理异常?

Java提供try-catch-finally语句来捕获和处理一个或多个异常。try、catch、finally【答】其中,

catch字句可以有一个或多个,finally字句可以省略。 是关键字。但至少要有一个catch字句,

5-9 为什么将字符串转换成数值类型时会抛出异常?抛出什么异常?

【答】 并不是所有的字符串都能转换成数值型,当遇到一个不能转转换成数值型的字符串时,Java抛出NumberFormatException异常。

5-10 说明throw语句与throws子句的区别。

【答】1.throws 用于抛出方法层次的异常, 并且直接由些方法调用异常处理类来处理该异常,所以它常用在方法的后面。比如 public static void main(String[] args) throws SQLException

2.throw 用于抛出代码层次的异常,常用于方法块里面的代码,常和try...catch ....语句块搭配实用,比throws的层次要低。

5-11 什么情况下需要自定义异常类?

当Java提供的异常类不能满足需要时,【答】程序需要对自己抛出的异常类进行特殊处理,则可以自定义异常类。

java程序设计实用教程第五版叶核亚答案_java程序设计实用教程 (第3版) 叶核亚 习题答案 所有答案1—12章...相关推荐

  1. java第二章测试题_MOOC选修课答案第二章单元测试答案_Java程序设计查询答案

    MOOC选修课答案第二章单元测试答案_Java程序设计查询答案 更多相关问题 ()是目前规模最大的历史性汉语语文词典.A.<康熙字典>B.<汉语大词典>C.<中华大字典& ...

  2. java赵莉课后答案_Java程序设计教程(第2版)

    <Java程序设计教程(第2版)>根据Java语言程序面向对象的本质特征以及面向对象程序设计课程的基本教学要求,在详细阐述面向对象程序设计基本理论和方法的基础上,全面介绍了Java语言的特 ...

  3. java实验指导书(实验四)答案_java程序设计实验指导书答案

    ? 狗生活在陆地上(是一种陆生动物),既是哺乳类的也是肉食性的.狗通常的时候和人 打招呼会通过"摇摇尾巴",在被抚摸感到舒服的时候,会"旺旺叫",而在受到惊吓情 ...

  4. java程序设计实用教程答案_Java程序设计实用教程(课本习题解答).doc

    习 题 1 1.James Gosling 2. 2) 使用Java编译器(javac.exe)编译源文件,得到字节码文件. 使用java解释器(java.exe)来解释执行字节码文件. .对于Win ...

  5. java程序设计教程第二版答案_java程序设计教程微课版答案

    [问答题,简答题] 何谓I.Ⅱ.Ⅲ型强心苷?写出其基本结构做成. [名词解释] 枣核艼 [单选] 科植物营养体最主要的特征(). [多选] 地球固体的表层是由岩石组成的硬壳--地壳,组成地壳的岩石按成 ...

  6. java大学教程习题答案_Java程序设计大学教程:习题解答与课程设计

    前言 计算机程序设计课程既是一门理论课又是一门实践课,除了要在课堂学习程序设计的原理和方法,掌握程序设计语言的语法知识和编程技能外,还要进行大量的课外练习和实际操作,以达到熟悉掌握所学知识,培养应用能 ...

  7. java程序设计唐大仕慕课答案_Java程序设计_中国大学MOOC(慕课)

    1. Java是什么样的语言? 答:Java语言是一门用途广泛的.面向对象的语言.Java语言可以编写桌面应用.手机应用及企业应用.Java简洁优雅,易于学习. 2. 没有学过编程,能学吗? 答:本课 ...

  8. java程序设计答案_JAVA程序设计课后练习答案.pdf

    <Java程序设计>课后练习答案 第一章 Java概述 一.选择题 1. ( A )是在Dos命令提示符下编译Java程序的命令,( B )是运行Java 程序的 命令. A. javac ...

  9. java 无理数_设 ,那么无理数集可以表达为_Java程序设计答案_学小易找答案

    [简答题]裱 糊 饰 面 工 程 施 工 的 主 要 施 工 工 艺 是 什 么 ? [其它]导入素材(学生信息表).txt 第10章.xls 练习.xls [单选题]87 . Photoshop的应 ...

  10. 有什么软件可以搜JAVA题答案_Java Web应用基础(软件)-中国大学mooc-试题题目及答案...

    把写有""形的玻片,放在显微镜下观察,所观察到的物象是()A.B.C.D. 小明在显微镜的视野中看到一个"P",则装片上写的是()A.bB.qC.pD.d 将一 ...

最新文章

  1. 王道考研 计算机网络笔记 第五章:传输层
  2. PCB设计要点-DDR3布局布线技巧及注意事项
  3. -bash:XXX: command not found报错(云服务centos)
  4. vue 导入element-ui css报错解决方法
  5. Django--网页管理实例解析
  6. html连接数据库id号自动生成器,SQL Server数据库sql语句生成器(SqlDataToScript)的使用(sql server自增列(id)插入固定值)...
  7. python对文本数据进行采样_Python对wav文件的重采样实例
  8. 一个大数据平台省了20个IT人力——敦奴数据平台建设案例分享
  9. PHP 实例 AJAX 与 MySQL
  10. 【狂神说Redis】4 三种特殊数据类型
  11. w10连接远程计算机控制,win10远程电脑怎么设置_win10通过远程桌面控制其他电脑的方法...
  12. linux运维系统故障排查思路及常见故障处理
  13. 【Python】从0开始写爬虫——扒一下狗东
  14. Ubuntu 18.04 chia 远程收割机 harvester 多台
  15. 【文本工具】使用文本排版大师(TxtEdit/TEditer)在记事本文件中绘制表格。
  16. Elasticsearch+Kerberos认证
  17. centos7扫描新硬盘_跟大家讲讲硬盘基础知识
  18. TC8:UDP_MessageFormat_01-02
  19. linux grep gz文件内容,如何查询targz的压缩包文件的内容
  20. 【夏目鬼鬼分享】RabbitMQ发布/订阅广播模式

热门文章

  1. Python版学生管理系统源码分享【考试/作业必备】
  2. 剖析:计算机专业大一学生如何学习C语言?如何自学C语言?大学C语言学习视频教程谁有?
  3. 网络工程师的python之路pdf下载_网络工程师的Python之路:网络运维自动化实战
  4. COM 组件编程--VC知识库读杨老师文章笔记
  5. On my way,Python
  6. java测试用例怎么写_Java测试用例编写规则
  7. 【读书笔记《Android游戏编程之从零开始》】8.Android 游戏开发常用的系统控件(系统控件常见问题)
  8. Activiti工作流Day18-Crystalball流程仿真
  9. Fiddler图标解释
  10. 【牛客网SQL篇】SQL必知必会