异常处理方式:1.捕获处理 try-catch-finally try:可能会出现异常的代码块 catch:捕获try语句块中出现异常的代码,并进行处理。finally:最终都要执行的代码块。
2.抛出处理 关键字throws 抛出异常,将出现异常的代码向上抛出,抛给方法处理,最终抛给jvm处理。
Error:错误 无法用代码解决,会引起系统程序的崩溃。
Exception: 异常:会引起当前线程的中断。
Exception 分为编译时异常和运行时异常;编译时异常,程序猿必需要进行处理,否则程序编译不通过。运行时异常不需要处理。
RuntimeException 常见异常有ArithmeticException,IndexOutOfBoundsException,NullPointerException,ClassCastException等
常见的编译异常有:SQLException IOException ClassNotFoundException.
常见的Error类有:OutOfMemoryError StackOverFlowError
自定义异常:当API所提供的异常类不能满足开发中所需要的对异常的处理时,则可通过自定义异常类来解决。
实现步骤:1.让自定义异常类继承自RuntimeException或Exception.
2.用有参构造方法做异常信息提示。或者用无参构造方法,重写Exception类的getMessage方法做提示信息。
throw:抛出声明时的一个异常对象。
throws:在方法上抛出异常。
final ,finally和finalize的区别。
final修饰的变量都是常量,修饰的方法不能被重写,修饰类不能被继承。
finally:用于try-catch-finally的语句块中,表示最终都要执行的代码,常用于流的关闭,数据库连接的关闭等,用来释放资源。
finalize:一个方法,当一个对象不存在更多的引用指向它时,由对象的垃圾回收器调用此方法把该对象进行回收。