继承
1、继承:extends
2、能够获得父类的属性和方法
3、子类会具有父类的功能,还会具有自己特殊的功能
4、开闭原则:对修改关闭,对扩展打开
5、单继承与多继承:Java支持单继承
单继承:一个子类只能有一个直接父类
多继承:一个子类可以有多个直接父类
java不支持多继承的原因:是因为如果两个父类都有同样的方法,子类继承
后会出现不确定性,不知道调用哪一个。多继承在java中通过多实现来完成的(
接口)
6、java不支持多继承但是支持多重继承
多重继承:A extends B,B extends C
C是继承体系中最基础的功能,C中定义了最基本的功能
7、同名属性访问问题(this,super):
当局部变量和成员变量同名用this
当子类变量和父类变量同名用super
this()调用自己本类的构造方法
super.方法(),调用父类的方法
一个子类在创建对象的时候,子类的构造方法中最终一定调用父类的构造方
法
this()和super()都只能放在第一行,都是构造方法
this和super在构造方法中只能有一个出现在第一行,但是最后肯定会调用父
类的构造方法,因为要初始化数据。
8、重写:方法名相同,参数列表相同,返回类型相同。子类与父类的方法是一
样的,必须在继承的情况下才有重写。
(子类的修饰权限要大于等于父类的修饰权限)
重载:方法名相同,参数列表不同,返回类型无关
9、构造方法不能继承
10、执行的时候先加载父类的,再加载子类的
11、在继承的时候,静态方法块static{}、构造方法块{}与构造方法 方法名(
){}的执行顺序:
(1)父类静态方法块(2)子类静态方法块(3)父类构造方法块(4)父类
构造方法(5)子类构造方法块(6)子类构造方法
12、子类不能直接访问父类的私有内容,但是子类继承了父类的私有内容
2、能够获得父类的属性和方法
3、子类会具有父类的功能,还会具有自己特殊的功能
4、开闭原则:对修改关闭,对扩展打开
5、单继承与多继承:Java支持单继承
单继承:一个子类只能有一个直接父类
多继承:一个子类可以有多个直接父类
java不支持多继承的原因:是因为如果两个父类都有同样的方法,子类继承
后会出现不确定性,不知道调用哪一个。多继承在java中通过多实现来完成的(
接口)
6、java不支持多继承但是支持多重继承
多重继承:A extends B,B extends C
C是继承体系中最基础的功能,C中定义了最基本的功能
7、同名属性访问问题(this,super):
当局部变量和成员变量同名用this
当子类变量和父类变量同名用super
this()调用自己本类的构造方法
super.方法(),调用父类的方法
一个子类在创建对象的时候,子类的构造方法中最终一定调用父类的构造方
法
this()和super()都只能放在第一行,都是构造方法
this和super在构造方法中只能有一个出现在第一行,但是最后肯定会调用父
类的构造方法,因为要初始化数据。
8、重写:方法名相同,参数列表相同,返回类型相同。子类与父类的方法是一
样的,必须在继承的情况下才有重写。
(子类的修饰权限要大于等于父类的修饰权限)
重载:方法名相同,参数列表不同,返回类型无关
9、构造方法不能继承
10、执行的时候先加载父类的,再加载子类的
11、在继承的时候,静态方法块static{}、构造方法块{}与构造方法 方法名(
){}的执行顺序:
(1)父类静态方法块(2)子类静态方法块(3)父类构造方法块(4)父类
构造方法(5)子类构造方法块(6)子类构造方法
12、子类不能直接访问父类的私有内容,但是子类继承了父类的私有内容