- Object 类:
顶级父类-----上帝 是所有类的父类。 可以根据需要对里边的equals toString hashcode方法重写
- 抽象类:
当对一个对象的具体细节无法描述时,可以抽象成一个类,只抽取功能定义,不写具体方法体。
关键字:abstract 抽象类不能对其实例化,抽象类中的方法必须在子类中去实现
abstract不能与final同时修饰一个类;也不能与private、static、final、native修饰同一个方法
- 接口(interface)
抽象类的延伸,还是一个特殊的抽象类;
接口中的所有方法没有方法体;
方法被public、 abstract修饰;
接口中定义的任何成员变量自动是 static、final的
- 内部类:
1.成员内部类:在外部类的成员位置上。内部类访问外部类中的同名变量:out.this.x
2.局部内部类:在方法体内部的类。
不可以被private public修饰,不可以定义静态变量;访问局部变量时,局部变量必须定义为final
3.静态内部类:用关键词static修饰的成员内部类。
不能访问外部非静态成员(变量和方法);
4.匿名内部类:没有名字的内部类。
不能定义构造函数;不能定义任何静态成员和方法、类;只能创建一个匿名内部类的实例;一个匿名内部类一定跟在new的后面,来创建其实现的接口或父类的对象。