public class ExceptionRecover {
public static void main(String[] args) {
openDoor();
String food = null; // 注意变量作用域, 如果定义在 try / catch 块内, 则无法被函数内其他作用域使用
try {
food = cook();
} catch (RuntimeException e) { // catch 块中的内容是备用方案
// 如果程序没有备用方案, 那么就不要 catch
e.printStackTrace();
// System.out.println("I'm hungry, but there is no food");
food = "express noodles"; // 提供备用方案
}
eat(food);
try {
eat(cook());
} catch (RuntimeException e) { // 如果要给出备用方案, 一定要准确
// 如果此时因为 eat 抛出异常而结束, 则 catch 块仍可能抛出异常
eat("express noodles");
}
rest();
}
public static void openDoor() {
System.out.println("open the door");
}
public static String cook() {
System.out.println("cook dinner");
throw new RuntimeException("rice is bad");
// return "rice and meat";
}
public static void eat(String food) {
System.out.println("eat " + food);
// throw new RuntimeException("dump");
}
public static void rest() {
System.out.println("rest");
}
}
分享到:
相关推荐
MySQL中的异常处理是数据库编程中不可或缺的一部分,它允许开发者预设对可能出现的错误或异常的响应,从而确保程序的稳定性和健壮性。在MySQL中,异常定义和处理主要是通过`DECLARE`语句来实现的。 1. **异常定义**...
本文将深入探讨.NET中的异常和异常处理机制,以及相关的最佳实践。 首先,异常(Exception)是.NET中表示错误或异常情况的类。所有的异常都直接或间接地继承自`System.Exception`类。自定义异常通常通过创建一个新...
异常处理是编程中的一种机制,用于捕获和处理运行时发生的错误或异常情况。异常可以由硬件引发,如硬件异常,也可以由操作系统或应用程序自身触发,即软件异常。当异常发生时,操作系统允许程序有机会检查异常类型并...
易语言是一种专为中国人设计的编程语言,它以简体中文作为编程语句,降低了编程的门槛,使得更多的人能够参与到编程中来。...同时,深入理解线程管理、异常处理和底层内存操作也是提升编程技能的重要步骤。
C# 异常处理时建立在四个关键词之上的:try、catch、finally 和 throw。 1、try:一个 try 块标识了一个将被激活的特定的异常的代码块。后跟一个或多个 catch 块。 2、catch:程序通过异常处理程序捕获异常。catch ...
下面是关于 Java 异常处理的习题和知识点总结: 一、Java 异常处理关键字 * Java 中用来抛出异常的关键字是 `throw`。 * `try`、`catch` 和 `finally` 是 Java 异常处理的三个主要组成部分。 二、异常处理机制 *...
3. 标准 C++异常处理的基本语法和语义 4. 实例剖析 EH 5. C++的 new 和 delete 操作时的异常处理 6. Microsoft 对于的实现版本中的异常处理 7. 部分构造及 placement delete 8. 自动删除,类属 new 和 delete、...
游标和异常处理 游标是 SQL 的一个内存工作区,由系统或用户以变量的形式定义。游标的作用就是用于临时存储从数据库中提取的数据块。在某些情况下,需要把数据从存放在磁盘的表中调到计算机内存中进行处理,最后将...
【异常处理】是编程中必不可少的一个环节,尤其是在Java这样的面向对象语言中。异常处理机制使得程序在遇到错误时能够优雅地中断执行...通过理解和熟练应用异常处理机制,开发者能够编写出更加稳定、可靠的软件系统。
本文较为详细的分析了.NET中的异常和异常处理用法。分享给大家供大家参考。具体分析如下: .NET中的异常(Exception) .net中的中异常的父类是Exception,大多数异常一般继承自Exception。 可以通过编写一个继承自...
Python标准异常和异常处理是编程过程中不可或缺的一部分,它们帮助开发者管理程序可能出现的错误情况,确保程序的健壮性。在Python中,异常是程序运行时出现的问题,它们打断了正常的执行流程。异常是Python对象,当...
"异常处理"则是编程中用于捕获和处理运行时错误的重要机制,它能够确保程序在遇到问题时不会突然崩溃。 在标题提到的"易语言HOOK异常处理"中,我们关注的是如何在易语言中实现对系统或应用程序的钩子,并在发生异常...
我们在捕获到异常并对异常进行处理时可能会遇到如下一些问题: 1.不确定应如何处理这些异常 2.需要记录异常日志时没有记录,或者异常在不同的地方重复记录,使得排错调试不方便 ...无法对某些异常进行统一处理和修改。
ARM处理器异常处理是指ARM微处理器对各种异常情况作出响应和处理的过程。异常指的是处理器在正常执行程序时遇到的特殊情况,例如外部中断请求、未对齐的内存访问错误、指令预取终止等。为了保证系统的稳定性和正确性...
"基于AOP的Java异常处理框架和工具的分析与设计" 本文主要探讨了基于AOP(Aspect-Oriented Programming,面向方面编程)的Java异常处理框架和工具的分析与设计。 异常处理机制是当前软件系统的重要组成部分,被大...
在编程领域,异常处理是确保...在编写代码时,良好的异常处理习惯能够帮助我们编写出更加健壮和可靠的程序,减少程序运行时的错误,提高用户体验。理解并熟练运用这些异常处理机制,是每个专业程序员必备的技能之一。
C语言和C++都提供了异常处理功能,但它们的实现方式和理念有所不同。 C语言的异常处理主要是通过操作系统提供的结构化异常处理(Structured Exception Handling,简称SEH)来实现的。在Windows操作系统中,C语言...
向量表的布局和大小根据系统的具体需求和配置而变化,确保异常处理程序在正确的位置被调用。 六、ARM或Thumb模式 ARM处理器支持ARM和Thumb两种指令集。在混合应用程序中,异常处理需考虑模式转换,以确保异常处理...