继承:
1、父类又称超类、基类,子类又称派生类
2、所有的类有一个隐藏的父类Object
3、继承一个类使用(extends 父类),
4、子类继承父类,可以的到父类的全部属性和方法(除了父类的构造方法),但不见得可以直接访问(比如,父类私有属性和方法)
5、上级的类叫:直接父类。
6、Instanceof运算符:判断左边的对象是不是右边的类所创建。是返回turn 不是返回false
表达式:对象 instanceof 类
super关键字:
Super:指向父类
Super():无参构造器
Super(id,name):有参构造器
Super.a():调用父类方法 (super可以看作是父类的一个对象)
方法的重写:
1、“==”: 方法名、形参列表相同
2、“<=”:返回值类型和声明异常类型,子类小于等于父类
3、“>=”:访问权限,子类大于等于父类
final关键字:
- 修饰变量:被他修饰的变量不可更改,一旦赋莲初始值,就不能被重新赋值。
final int a = 1; - 修饰方法:该方法不可被子类重写。但可以被重载。
final void a (){} - 修饰类:修饰的类不能被继承。比如Math、String等。
final class a{}
组合:
组合不同于继承,它比继承更加灵活,可以组合多个父类。
组合的核心:
将父类对象作为子类的属性,然后子类通过调用这个属性来获得父类的属性和方法 父类 a = new 父类()
调用:子类 b = new 子类
b.a.属性(方法)。