异常可能会丢失 java异常处理机制的一个缺陷
//: LostMessage.java
//How an exception can be lost
class VeryImportantException extends Exception {
public String toString() {
return "A very important exception!";
}
}
class HoHumException extends Exception {
public String toString() {
return "A trivial exception";
}
}
public class LostMessage {
void f() throws VeryImportantException {
throw new VeryImportantException();
}
void dispose() throws HoHumException {
throw new HoHumException();
}
public static void main(String[] args) throws Exception {
LostMessage lm = new LostMessage();
try {
lm.f();
}
/*catch (Exception e)// 必须用catch 明显的捕获 不能期望像下面dispose()一样调用方法时 异常自己打印出
// 栈内异常信息,因为finally得缘故 f()的异常会被丢失!!
{
e.printStackTrace();
}
*/
finally {
lm.dispose();
}
}
}
分享到:
相关推荐
标题“Mer-No.04 board各省份MSISDN数据出错处理”暗示了这是一个关于解决特定硬件板(Mer-No.04 board)在处理不同省份的MSISDN(Mobile Station International Subscriber Directory Number,即移动用户国际识别码...
12. 计算机掉电,外存中的信息不会丢失,内存中的信息才会丢失。 13. 表达式1.0/a/b/c能正确表示代数式,其他选项可能导致整数除法。 14. HTML代码`<p align="center">Hello World!</p>`会在浏览器中居中显示。 15. ...
20. 在Java异常处理中,catch子句的顺序无关紧要,因为Java会按匹配程度从上到下捕获异常。 21. 删除数据库会删除包含的表,使它们成为自由表。 22. 第二代电子计算机使用晶体管作为主要元件,相比第一代的真空管...
9. 异常处理:在Java等语言中,try-catch语句块处理异常时,如果有父类和子类异常,子类异常应放在前面,因为子类捕获更具体,父类捕获更一般。 10. 访问修饰符:默认修饰符(Default)使得类中的成员方法只能在同...
12. **异常处理**:在异常处理中,`try-catch`语句可以处理不同类型的异常,子类异常应先于父类异常处理。 13. **拨号入网**:拨号入网通常通过公用电话系统连接到Internet服务器。 14. **数据模型**:除了层次...
10. **异常处理**:在编程中,异常通常通过`try-catch`块来捕获和处理。 11. **计算机公司历史**:“蓝色巨人”指的是IBM,早期在计算机硬件领域占有重要地位。 12. **PowerPoint动画**:在PowerPoint中,每张幻灯...
9. **异常处理**:在Java或类似的编程语言中,大部分异常类都是Exception类的子类。 10. **控件与字段绑定**:在数据库应用中,如果控件绑定了字段,其Value属性将随记录移动而变化。 11. **个人计算机**:个人...
10. 关闭Windows:直接断电可能造成数据丢失,正确关闭方式是通过开始菜单或电源选项。 11. VFP6.0操作方式:支持菜单、命令和命令文件三种操作方式。 12. 临时关系设置:建立临时关系时,需设置子表的主控索引。 ...
4. **计算机病毒**:计算机病毒是一种恶意软件,能够自我复制并可能造成系统破坏或数据丢失,但并不是所有的文档文件都是病毒。 5. **异常处理**:在Java等编程语言中,异常处理通常使用`try-catch`块,`try`代码块...
9. 存储程序和程序原理:冯·诺依曼提出了计算机的存储程序和程序原理,这是现代计算机设计的基础。 10. 存储器特性:RAM在断电后会丢失数据,而ROM和硬盘(非易失性存储)在断电后仍能保持数据。 11. 关闭Windows...
19. 异常处理:try...catch结构用于捕获和处理异常,try块包含可能抛出异常的代码,catch块处理异常。 20. WWW基础:WWW(World Wide Web)是基于Internet的一种服务,而非网络本身。 21. 表达式计算:CINT函数将...
### 9. 异常处理 - **知识点**:异常捕获的基本结构。 - **解释**:异常处理通常由`try`和`catch`两个关键字构成,其中`try`代码块中编写可能抛出异常的代码,而`catch`代码块用于捕获并处理异常。 ### 10. 继承性...
19. 链表中删除节点时,要保持链表连续,不能使用`p=q->next`,因为这会导致丢失`p`到`q`的链接。 20. 删除SQL表中的字段使用`ALTER TABLE`语句,加上`DROP`关键字,如`ALTER TABLE 教师 DROP 照片`。 21. Java...
22. Java异常处理:应将低级别异常类的catch子句放在前面,先捕获并处理低级别的异常。 23. Python turtle库:home()函数使画笔回到原点,面向东方,seth(x)是设置方向。 24. Access数据类型与索引:备注型数据...
11. **异常处理**:当尝试将非列表的输入转换为列表时,Python的eval()函数会抛出异常,因此程序会执行except块,输出“输入的不是列表”。 12. **数据结构**:数据的逻辑结构和存储结构可能不完全对应,不同的数据...
9. Word文档保存:在Word中,将文档另存为纯文本文件会丢失原有的图形和表格格式。 10. 应用程序异常处理:在Windows中,可以通过Ctrl+Alt+Del组合键来强制结束不响应的应用程序。 11. 字段输入格式限制:在表设计...
16. Java异常处理:在方法上声明可能抛出的异常使用`throws`关键字。 17. 缓冲技术:Visual FoxPro提供了保守式和开放式两种缓冲锁定方式。 18. Access数据库关系:在一对多关系中,存在父表和子表的概念,可以...
1. 内存由ROM(只读存储器)和RAM(随机存储器)组成,其中ROM在断电后仍能保持数据,而RAM是易失性存储,断电后数据会丢失。 2. 当表文件包含备注型或通用型字段时,打开表文件会同时打开扩展名为.FPT的文件,这是...
7. 在Java中,try块用于捕获异常,后面通常跟着catch块来处理异常,而finally块用于确保某些代码无论是否发生异常都会执行。所以A和C选项是正确的。 8. UDP(User Datagram Protocol)是面向无连接的协议,不保证...
4. 直接断电:突然断电可能会导致数据丢失,损伤软件系统,也可能损坏硬件,尤其是正在写入数据时。 5. do-while循环:do-while循环至少执行一次,由do开始,while结束,while后面要跟分号,循环体可以是复合语句。...