继承
新概念,指在创建类时如果使它继承另一个类,其含有另一个类中的所有成员和方法,创建例:
public class Zi extends Fu{...}
Fu类中所有成员和方法,在Zi类中不需要定义即可使用,成员或成员方法如果重复,子类会以自己内部的成员或成员方法为准;
继承不考虑隔代继承,只考虑一代继承即可;但是java中允许多层继承,即父类从它的父类继承的成员,可以被子类继承
子类不能继承多个父类,只能继承一个父类;
子类可以继承父类中的private成员,但是不能访问,需要通过set、get方法访问;
super关键字
与this类似,this科访问当前类下成员变量,super访问父类中的成员变量;
例:
super.成员变量
super(...)//访问父类构造方法,可带参
super.方法名(...)//访问父类成员方法
this同上
继承中构造方法访问
使用子类中的构造方法时,会默认先使用父类中的无参构造方法,即子类中的构造方法前都默认有一句super();
如果父类中没有无参构造方法,则子类中需要手动添加带参构造方法super(…);
方法重写
子类中写一个成员方法和父类中的方法名、参数相同,方法内容可以变化,方法前可以加@override验证是否重写正确
父类中private修饰的私有方法不能被子类继承,所以也就不能重写
子类中方法重写时,访问权限不能不原方法的权限低