Throwable分两种
一种是Error,另外一种是Exception。
Error是机器,软件故障之类的,无法修改,而Exception则是人为可以修改,并使程序能够成功运行的。
Exception还分可以处理而不处理的(RuntimeException)跟必须处理两种。
有异常当然需要捕捉,所以在所有会产生Exception的类函数都需要包含在
try{
}catch(){
}
如果会出现多种异常,可以使用多个catch来进行捕捉
try {
//可能产生异常函数使用
}catch (FileNotFoundException e) { //e可以随便定义,但必须与下面的e对应
e.printStackTrace();
} catch (IOException e) {
System.out.println(e.getMessage());
} //printStackTrace可以捕捉异常的开始到结束
当然所使用的函数是否有异常抛出则需要详细阅读JAVA-API,查看是否RuntimeException。
五个关键字:
try、catch、throw、throws、finally.
其中throw与throws的区别为:
public Test() throws RepletException {
try {
System.out.println("Test this Project!")
}
catch (Exception e) {
throw new Exception(e.toString());
}
}
throws是用来声明一个方法可能抛出的所有异常信息
throw则是指抛出的一个具体的异常类型。
通常在一个方法(类)的声明处通过throws声明方法(类)可能抛出的异常信息,而在方法(类)内部通过throw声明一个具体的异常信息。
throws通常不用显示的捕获异常,可由系统自动将所有捕获的异常信息抛给上级方法;
throw则需要用户自己捕获相关的异常,而后在对其进行相关包装,最后在将包装后的异常信息抛出。
也可以有下面总结:
1、throw代表动作,表示抛出一个异常的动作;throws代表一种状态,代表方法可能有异常抛出
2、throw用在方法实现中,而throws用在方法声明中
3、throw只能用于抛出一种异常,而throws可以抛出多个异常
至于finally则是这样的:
如果try块中的代码发生了异常,那么就会执行catch块中的代码,完后就会看有没有finally块,如果有,则进去,没有,则会跳出当前方法,不可能再执行catch块后面的代码。finally块就是为了让你执行一些你非常想要执行的代码,无论程序是否发生异常,比如关闭连接或其它的资源释放语句。
分享到:
相关推荐
在编程世界中,错误处理是不可或缺的一部分,Java和许多其他编程语言中,"error"和"exception"这两个术语经常被提及。理解它们之间的区别对于编写健壮和可靠的代码至关重要。 首先,我们来看"error"。在Java中,`...
Java中Error与Exception的区别 Java 中的 Error 和 Exception 是两个不同的概念,它们都是 Throwable 的子类,但它们之间存在着许多不同之处。 首先, Error 类和 Exception 类都继承自 Throwable 类,这一点是...
error与exception的区别查阅网上资料大多是java的解释,貌似php的异常处理过程与java差不多 java中的Object继承结构如下: Object—->Throwable——–> Exception —-> RuntimeException | Error Error都是unchecked...
理解`Error`和`Exception`的区别对于编写健壮的Java代码至关重要。在实际编程中,应该尽量避免让程序抛出`Error`,因为这通常意味着系统层面的问题,而`Exception`则应当被适当地捕获和处理,以提高程序的稳定性和...
总的来说,理解Error和Exception的区别对于编写健壮的Java代码至关重要。正确地处理和区分这两类异常可以帮助我们及时识别和修复问题,提高程序的稳定性和可靠性。在编程实践中,应尽可能避免抛出Error,因为它们...
"Demo - Replace Error Code With Exception" 这个主题着重于将传统的错误码机制替换为异常处理机制,以提高代码的可读性、可维护性和异常处理的效率。 错误码通常是通过返回特定的整数值来指示函数或方法执行期间...
### 捕获Throwable与捕获Exception的区别 在Java编程中,异常处理是确保程序健壮性和稳定性的重要机制之一。通常我们使用`try-catch`语句来处理可能发生的异常情况。而在Java中,所有异常类都继承自`Throwable`类,...
【Exception和Error的区别】 在Java编程中,Exception和Error都是基于`Throwable`类的子类,它们构成了Java异常处理机制的基础。理解两者的差异对于编写健壮的代码至关重要。 1. **Exception**: Exception是程序...
Java 语言中的异常处理是其核心特性之一,它通过`Throwable`、`Exception`和`Error`类层次结构来组织和区分不同的错误情况。`Throwable`是所有异常和错误的基类,它分为两大类:`Exception`和`Error`。 `Exception`...
Java是一种广泛使用的高级编程语言,由Sun Microsystems公司(现在是Oracle公司的一部分)的James Gosling和他的团队在1995年发布。Java是一种面向对象的语言,以其可移植性、健壮性和多线程能力而闻名。...
2. 运行时异常(RuntimeException) 3. 被检查的异常(Checked Exception) 1.增强程序堆内存的处理效率 2.设置缓存大小
最后,我们来讨论一下ActionError与Exception Handling的关系。在Struts中,你可以定义全局的异常处理器(Global Exception Handler)来统一处理所有未捕获的异常。这可以通过在struts.xml中定义`<global-exception-...
例如,`throw std::runtime_error("Error message");`会抛出一个运行时错误。 4. **异常捕获**:使用`try-catch`块可以捕获和处理异常。`try`块包含可能抛出异常的代码,而`catch`块则定义了如何处理这些异常。例如...
Java中的异常体系主要分为两大类:`Error` 和 `Exception`。 - **Error**:通常表示系统级的错误,例如内存不足等,这类问题程序员通常无法避免,也不应该去处理。 - **Exception**:表示可以通过程序设计来避免或...
Java 异常机制包括 Error、Exception、检查异常、运行时异常、异常处理和 throws 关键字等几个方面。 Error 是 Java 异常机制中的基类,表示编译时或者系统错误,例如虚拟机相关的错误、系统崩溃等。Error 无法恢复...
除了错误代码,`<error-page>`还可以通过`<exception-type>`捕获特定的异常类型,例如`java.lang.NullPointerException`。 ```xml <error-page> <exception-type>java.lang.NullPointerException</exception-...
这种模式通常与pipeline(管道)和宏(macros)一起使用,以实现Elixir应用程序中的错误处理流程。本文将深入探讨如何在Elixir中使用"OK"模式,并结合Monad的概念来理解其工作原理。 首先,Elixir中的错误处理主要...
`Throwable`类有两个主要的子类:`Error`和`Exception`。 - **Error**:通常用于指示系统级错误,这类错误往往是程序无法处理的(例如,虚拟机错误),因此不应该被程序捕获。 - **Exception**:代表可以被程序捕获...