Java 的继承与多态的小知识
java 继承:单继承,一个类是能有一个父类,但父类可以有多个子类
继承重写:
子父类的方法都必须为static或非static方法。
子类的方法不能小于父类的修饰权限。
如果在父类的一个方法定义为private访问权限,在子类中将此方法声明为default权限,那么就不叫重写。调用变量:
当子类与父类中有同名的属性时,可以通过super.此属性,显式调用父类中声明的变量。
若想调用子类的属性this.此属性。
当子类重写父类的方法以后,在子类中想在显式调用父类被重写的方法,就需要使用super.方法。
调用父类重名的变量用super.变量,不重名可以this或者super。
super修饰构造器:super(形参列表),显示调用父类中指定的构造器,在首行。
不显示调用super(),默认调用父类的。
设计类时,尽量提供空参的构造器。多态性:(向上转型)
子类对象的多态性:父类的引用指向子类的对象,执行的实体是子类的。
虚拟方法调用:通过父类的引用指向子类的对象实体,当调用方法时实际执行的是子类重写的方法。
使用前提:①要有类的继承②要有子类对父类方法的重写。
3 .程序运行分为编译状态和运行状态:
多态性:编译时看左边,讲此引用变量理解为父类的类型
运行时:看右边,执行真正的实体
instanceof判断对象是否为类的实例,返回布尔类型。
子类对象多态性并不适用于属性,只看左边。