1. Object类
|-- equals,建立对象自己独特的比较方式,不在是比较对象地址值
需要子类覆盖equals方法
|-- finalize,虚拟机回收堆中的对象垃圾的时候,调用该对象的finalize方法
|-- hashCode,方法,返回int值,对象在堆中的地址,通过这个方法计算出来的
|-- toString,方法,返回了对象的字符串表现形式 ,类名@哈希值
需要子类覆盖toString方法,实现自己独特的字符串表现形式
2. 内部类
|-- 类中类,嵌套类
|-- 调用内部类中的函数 ,非静态
格式 外部类名.内部类名 变量 = new 外部类对象().new 内部类对象();
|-- 调用内部类中的函数,内部类静态 ,函数非静态
格式 外部类名.内部类名 变量 = new 外部类名.内部类对象();
|-- 调用内部类中的函数,全部是静态
格式 外部类名.内部类名.函数名()
|-- 内部类中,访问外部类成员变量 外部类名.this.变量名 非静态
|-- 内部类中,访问外部类成员变量 外部类名.变量名 静态
|-- 内部类,定义在局部,写在了外部类的函数中,内部类中的函数,访问外部类函数中的变量
这个变量需要加 final 因为生命周期
3. 匿名内部类
|-- 继承一个类,或者实现接口
格式:
new 接口()
{
覆写,接口中的抽象方法
}.接口中的方法;
接口 变量 = new 接口()
{
覆写接口中的抽象方法
覆写接口中的抽象方法
};
变量.函数();
变量.函数();
4. 异常
|-- 异常的面向对象思想
java将异常都封装成了对象
|--异常体系:
Throwable
Exception
小问题,可处理
Error
大问题,必须修改代码
5. 异常的处理方式
try{
//可能发生异常的代码
}catch(异常类 变量){
// 处理方式
}
6. 打印异常信息的3个常用方式
|--getMessage();
|--toString();
|--printStackTrace() ;
7. 异常的第二种处理方式 抛出异常(********面试)
|-- throw
|-- throws
8. 编译时期异常和运行时期异常
|-- 调用了抛异常的方法,调用者没有处理异常
|-- 运行时期异常对象描述 RuntimeException 和他的子类
|-- 这个异常,在运行时期抛出,不需要在函数上声明,也不需要处理
|-- 运行时期异常,一旦出现,程序停止运行,修改源代码
9. 自定义异常
|-- java中,没有完全描述所有的异常,有的异常是java没有描述的,需要自定义异常
|-- 继承Exception 或者 继承RuntimeException
|-- 调用父类构造方法,传递异常信息
*****************************************************************************************************
包:
|-- 分类管理类文件
|-- 提供多层命名空间
|-- package
|-- 就是文件夹
1. 包与包之间类的访问
|-- public protected default private
2. import 关键字
|-- 导入类
|-- 需要子包中的类,导入到子包
3. jar
|-- jar -cvf 文件名.jar 包