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. 回顾