10.22(day11) Object类 异常

1. Object类:它是所有对象的直接或者间接父类

    boolean equals(Object obj):比较两个对象的地址值是否相同

    String toString:返回对象的字符串描述,格式:包名.类名@哈希码值

    int hashCode( ):返回的是对象的哈希码值

    注意:如果equals方法返回的是true,说明两个对象的哈希码值相同

       如果两个对象的哈希码值相同,不能说是同一对象

2. java.lang: java的默认包

  java.until: 工具包

  java.io: 流的技术

  java.net: 网络编程

3. 异常

  简单说:程序运行的过程中没有出现预期的结果,显示错误信息,导致程序停止

  运行过程:

      某一个行代码出现了问题,则会在该行产生一个用于描述错误信息的对象,尝试内部进行解决该问题,如果没有处理代码则会交给上一级

      上一级查看是否有处理的代码,如果有则处理,没有继续找上一级,以此类推,直到找到jvm,jvm采用默认处理机制,将错误信息等显示到控制台

4. 异常处理

  (1)异常的声明,即交给上一级处理

       throws 异常名,用在方法上,谁调用该方法,谁处理异常

       throw  抛出,用在方法内,主动抛出一个异常对象

  (2)异常的捕获,即自己处理

       try{

          可能出现异常的代码

       }catch(异常名  变量名){

         处理代码

       }finally{

         一定会执行的语句

         遇到return也会执行,碰到System.exit(0)则不执行了

         作用:

            释放资源的操作

       }

5. 异常体系

  Object

    ---Throwable:是异常根类

      ---Error:错误,程序员不能解决

      ---Exception:异常,程序员可以解决

        ---RuntimeException   ---运行时异常(非受检异常)

        ---其他子类                 ---编译时异常(受检异常)

6. 自定义异常

  (1)继承Exception或者是RuntimeException或者是他们的子类

  (2)调用父类的构造方法(可选)

  (3)语法结构:

          try/catch/finally

          try/catch

          try/catch...

          try/catch/finally

          try/catch.../finally

          try/finally

  注意:

     a. 如果父类方法没有throws,子类重写时,只能声明运行时异常,不能声明编译时异常

     b. 如果父类方法声明了编译时异常,那么子类重写是,声明的是相同的异常或者是该异常的子类(多个)

7. 回顾

原文地址:https://www.cnblogs.com/jihongtao/p/9831148.html