面向对象之继承。
继承定义:在一个类基础上定义一个新类叫继承,原有的类叫父类,新生成的类叫子类。
面向对象编程OOP,面向对象的分析和设计OOAD(OOAD中继承叫派生、父类叫超类)。java中只有单继承。
继承实现:在java中,继承有extends关键字实现。
public class Son extends Father
{
}
public class Father
{
}
继承的特点:
1、子类拥有父类的属性和方法
2、子类可以有自己新的属性和方法
3、子类可以重写(覆盖)父类的方法
4、可以声明父类创建子类
声明的什么类型,就只能调用本类型的属性和方法
创建的什么类型,运行什么类型的方法
创建的什么类型,就可以强转为什么类型
当两个类有多个相同的属性方法时,抽取父类。
优点:减少代码冗余,实现代码复用。
this和super区分是子类和父类的方法。this子类,super父类。
继承中的构造方法:
1、创建对象一定会调用构造方法
2、创建子类对象一定会调用父类的构造方法
3、子类默认调用父类无参构造方法
4、子类只能调用父类存在的构造方法
5、子类构造方法中使用super调用父类构造方法,并且super必须放在第一行
6、构造方法中this表示调用本类其他构造方法,并且this必须放在第一行