JAVA初学笔记&宋红康JAVA基础篇(其十一)

    科技2022-07-13  128

    异常处理

    概述

    对于发生不正常情况,造成程序崩溃、退出、溢出等,称之为“异常”

    try-catch后,被try的代码不会因异常而导致程序崩溃退出

    基本分类

    Error

    Java虚拟机无法解决的严重问题

    Exception

    能够捕捉绝大部分异常,属于通式

    分类

    Error

    Java虚拟机无法解决的严重问题

    Exception

    能够捕捉绝大部分异常,属于通式

    编译时异常(checked)运行时异常(unchecked)IOExceptionNullPointerExceptionFileNotFoundExceptionArrayIndexOutOfBoundsExceptionClassNotFoundExceptionClassCaseExceptionNumberFormatExceptionInputMismatchExceptionArithmaticException

    使用

    try{ }catch(要捕捉的异常 输出的异常原因){ // 常用1.String getMessage() // 2.printStackTrace() } finally{ }

    可选:finally 为try后执行的代码,一般用来release

    throws

    throws + 异常类型 写在方法的声明处。指明此方法执行时,可能会抛出的异常类型。一旦该方法执行时,出现了异常,仍会在异常代码处生成一个异常类的对象。此对象满足throws后异常类型时,就会被抛出,异常代码后续的代码,就不再执行。不同 try-catch:真正的将异常处理掉了throws:将异常抛给方法的调用者,不处理异常。顾名思义,丢弃/抛出~

    手动抛出异常

    public void regist(int id){ // 接收异常 throw new RuntimeException(“String”); }

    自定义异常类

    继承于现有的异常结构:RuntimeException、Exception提供全局常量:serialVersionUID提供重载的构造器

    final和finally

    final:太监类finally:在最后执行 finalfinally修饰类,不能被其他类继承可以间接被继承修饰方法,不能被重写-修饰变量,此时"变量"就称为一个常量-修饰属性,可以显式初始化-修饰局部变量,变为常量且仅能使用在方法体内,无法重新赋值-
    Processed: 0.015, SQL: 8