Java基础之继承、抽象类

继承特点:

1)是类与类之间的关系,单继承(一个子类只有一个父类)
2)多个类可以继承一个父类
3)可以多层继承,父类继承另一个父类

继承成员变量特点:

1)子类只能获取父类非私有成员
2)同一变量遵循就近原则(局部变量>子类成员变量>父类成员变量)
3)super:可以获取父类的成员变量和成员方法,与this关键字类似

继承成员方法的特点:

1)子类中没有这个方法,调用父类方法
2)子类重写了这个方法,调用子类方法Override

方法重写的应用场景和注意事项:

场景:父类方法不能完全满足子类使用,既可以保留父类功能,还可以有自己特有功能
注意事项:不可重写父类私有方法;重写方法权限必须大于等于父类方法

继承构造方法执行顺序:

1)super(实参列表);语句 在子类的构造方法中使用,用来调用父类中的构造方法,并且只能在构造方法第一行使用
2)this(实参列表);语句 在类的构造方法中使用,用来调用本类中的其他构造方法,并且只能在构造方法第一行使用

继承优缺点:

1)优点:提高代码的复用性;提高代码的可维护性
2)缺点:类的耦合性增强(开发的原则是高内聚低耦合:内聚就是自己完成某件事情的能力,耦合就是类与类之间的关系)

抽象类的特点:

1)抽象方法只能在抽象类中
2)抽象类和抽象方法只能被abstract修饰
3)抽象类不能创建对象(不能被实例化)
4)抽象类中可以有非抽象方法
5)抽象类和类的关系也是继承
6)一个类继承了抽象类要么重写所有的抽象方法,要么自己也是抽象类

抽象类的成员特点:

1)成员变量:可以有成员变量;可以有常量
2)成员方法:可以有抽象方法;可以有非抽象方法
3)构造方法:可以有构造方法,需要对抽象类的成员变量进行初始化

抽象类细节

1)抽象类中的抽象方法不能被private、final和static修饰
2)抽象类中也可以没有抽象方法,但是是个没意义的抽象类
抽象类中有构造函数,是由子类的super语句调用,用于给抽象类中的成员初始化

注:上述知识点来源于观看黑马Java视频及笔记整理的,只为做记录,侵权删。

类的初始化过程:
父类静态域——》子类静态域——》父类成员初始化——》父类构造块——》1父类构造方法——》2子类成员初始化——》子类构造块——》3子类构造方法

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值