1.类的继承
类的继承使用extends关键字,例如
public class Dog extends Animal{
public Dog(){
System.out.println("创建了一个Dog。");
}
}
2.子类创建时的构造顺序
3.在继承时final 的运用
final关键字修饰不同对象时的作用:
- 类:该类不允许被继承
- 属性:该属性不会被系统自动初始化,所以必须自己初始化(可在声明时初始化或在构造方法中初始化,但只能两者选其一)
- 方法:该方法在本类的子类中不能被重写
- 变量:作用等同于const,声明常变量
4.使用super关键字
//在子类中使用
super.父类成员;
//就可以访问其父类的成员
注意:
- 系统会在子类的构造方法的开始时隐式地调用父类构造方法super(),而系统隐式调用父类构造方法时默认调用无参的构造方法,若是此时父类中没有系统自动生成或手动定义无参的构造方法,则会报错,需要显式地调用父类构造方法来解决。
- 父类属性若被子类重写,那就是两个不同的属性。
5.Object类
- toString方法:返回类的对象的引用地址转化成的字符串
- equals方法:比较两个类的对象的引用地址是否相同
- getClass方法:返回类对象的类型
6.多态
- 引用多态是指父类的引用可以指向子类的对象(但子类的引用不能指向父类的对象),且指向子类对象时调用被重写过的成员时优先调用子类重写的成员(但不可以调用子类有而父类没有的成员)。