继承的定义
子类继承父类的属性和方法
为什么要使用继承
在同种类型中有大量重复的代码,可以提取出来,减少代码量;
继承的关键字:extends
class Dog extends Pet{
//子类Dog 继承了父类 Pet
}
继承的条件要满足is-a的关系 ,只能单根继承
有哪些是不能被继承
1:private修饰的
2 :构造方法
3:不同包下默认修饰符修饰的内容
super可以调用父类的属性,方法,还有构造方法,调用时必须写在第一行
调用属性 super name();
调用方法 super show();
调用构造方法 super();
构造方法调用顺序:
在子类中如果明确写了调用父类的某一个构造方法,则会执行被明确调用的构造方法,如果在子类
构造方法中,没有写任何调用的构造方法,则会默认调用父类的无参构造方法。
重写定义
方法名相同参数列表相同,返回值相同或者是其子类,访问修饰符不能严于父类,抛出的异常不能大于父类
为什么使用重写
原来的方法已经不能满足的我们的需要,需要重写编写
抽象:abstract修饰的方法叫做抽象方法,abstract修饰的类叫做抽象类,
抽象方法是没有返回体的,且必须在抽象类中,但是抽象类中不一定有抽象方法;
抽象类的抽象方法一会被子类重写,如果子类没有重写,且子类必须也是抽象类,抽象类是不能new(创建)对象的