标签:final 方法 ice image 报错 imp uid 应用 应用程序
Error:是程序中无法处理的错误,表示运行应用程序中出现了严重的错误。此类错误一般表示代码运行时JVM出现问题。通常有Virtual MachineError(虚拟机运行错误)、
NoClassDefFoundError(类定义错误)等。比如说当jvm耗完可用内存时,将出现OutOfMemoryError。此类错误发生时,JVM将终止线程。非代码性错误。因此,
当此类错误发生时,应用不应该去处理此类错误。
Exception::程序本身可以捕获并且可以处理的异常。
Java异常机制用到的几个关键字:try、catch、finally、throw、throws。
异常的父子级:
代码实现:
import org.w3c.dom.Text; public class Demo1{ public static void main(String[] args) { int a = 1; int b = 0; try{ //只要try中的代码出错就会到catch System.out.println(a/b); }catch (ArithmeticException e){//catch(捕获异常的类型) //只要报ArithmeticException的错误就会执行下面的代码 System.out.println("ArithmeticException错误"); }catch (Error e){ //catch可以写多个 System.out.println("未知异常"); }finally { System.out.println("不管报没报错都会执行finally"); } //调用text方法 new Demo1().text(a,b); } //假设这方法中,处理不了这个异常,可以用throws在方法上抛出异常 //throws会将异常抛给调用它的程序 public void text(int a ,int b) throws Error{ if (b==0){ //throw主动抛出异常 一般在方法中使用 throw new ArithmeticException(); } } }
如果要自定义异常类,则扩展Exception类即可,因此这样的自定义异常都属于检查异常(checked exception)。如果要自定义非检查异常,则扩展自RuntimeException。
按照国际惯例,自定义的异常应该总是包含如下的构造函数:
public class IOException extends Exception { static final long serialVersionUID = 7818375828146090155L; public IOException() { super(); } public IOException(String message) { super(message); } public IOException(String message, Throwable cause) { super(message, cause); } public IOException(Throwable cause) { super(cause); } }
标签:final 方法 ice image 报错 imp uid 应用 应用程序
原文地址:https://www.cnblogs.com/love2000/p/14144460.html