前言
今天没机会看阿噗,好难过~,深夜十一点的学习gogogo
继承性
好处
- 减少代码冗余,提高代码复用性
- 便于功能扩展
- 多态性基础
格式
class A extends B{}
A:子类、派生类、subclass
B:父类、超类、基类、superclass
- 体现:一旦子类A继承父类B之后,子类A中就获取了B中声明的属性和方法。
- 特别的:父类中private的属性和方法,子类继承父类后,仍然认为获取了父类中私有的结构。
Java中关于继承性的规定
- Java中只允许单继承和多层继承,不允许多重继承(即一个孩子有多个爸爸)
Java中类的单继承性:一个子类只能有一个父类
一个父类可以派生出很多子类
- 子父类是相对的概念,子类直接继承的父类,称为直接父类;子类间接继承的父类,称为间接父类。
子类继承父类以后,就获取了直接父类以及间接父类。
Object类
- 所有的类都间接或直接的继承于java.lang.Object类
方法重写
-
定义:子类继承父类以后,可以对父类中同名同参的方法,进行覆盖操作
-
应用:重写以后,当创建子类对象以后,通过子类对象调用子父类中同名同参数的方法时,实际执行的是子类重写父类的方法。
-
规定:
- 方法的声明:权限修饰符 返回值类型 方法名(形参列表){ }
- 约定俗成:子类中的叫重写的方法,父类中的叫被重写的方法。
- 子类重写的方法名和形参列表与父类被重写的方法名和形参列表相同
- 子类中重写的方法的权限修饰符不小于父类中被重写的权限修饰符
子类中不能重写父类中private的方法
- 返回值类型
父类中返回值类型是A类型,则子类重写的方法的返回值类型可以是A或A的子类
父类中返回值类型是基本数据类型,则子类重写的方法的返回值类型应该是基本数据类型- 重写的类型要么都是static(不是重写),要么都不是static(重写)。
太爱他俩了