继承

继承

继承:定义一个独立的类,将其他类中的共性内容抽取出来存放到该类中,该类和其他类有一种关系,叫作“继承关系”。(extends)

继承的好处:
1)提高代码的复用性(代码结构清晰);
2)提高了代码的维护性;
3)类和类产生的这种继承关系,是多态的前提条件。
开发原则:低耦合 高内聚
耦合:尽量的一个类能完成的事情一个类去完成,不要产生过多关心。
内聚:执行某件事情的能力。
继承的关系也是一种弊端,类和类产生,耦合性就增强了。
继承的特点:
1)在Java语言中,类和类之间只支持单继承,不支持多继承,其他语言是支持多继承的。
格式:子类名	extends	父类名1	父类名2	{	}
2)虽然不支持多继承,但是类与类之间是可以多层继承的

继承中的注意事项:
1)子类继承父类,可以继承父类中所有的非私有的成员。
本身私有的成员变量/成员方法只能在本类中访问,外界不能访问的,但是间接通过公共的的访问方法可以访问。
2)子类继承父类,不继承父类的构造方法,但可通过关键字super来访问。
3)不要为了使用部分功能而且使用继承。

如果子类成员变量和父类成员变量名称不一致时,分别访问。
当子类成员变量和父类的成员变量一致时:(**就近原则**)
1)先在子类的局部位置找,找到了就使用;
2)如果局部位置中没有,在子类成员位置中找,找到了就使用;
3)如果没找到,就在父类的成员位置中找;
4)如果还没有,说明不存在。
关于继承中构造方法的关系:
子类是不能继承父类的构造方法的,但通过super()来访问
1)在继承中,子类中所有的构造方法都默认访问父类的无参构造,相当于子类的所有构造方法的第一句话:隐藏了super()。
2)为什么创建子类对象时先执行父类的无参构造方法?
因为可能用到父类的数据,先加载父类进行数据初始化,执行完毕了才执行子类的构造方法,分层初始化。
子类的所有构造方法默认访问父类的无参构造方法,如果父类没有提供,就会报错,该如何解决?
方式1:手动给出;
方式2:1)间接通过super()来访问父类有参构造初始化;2)通过this()访问本类(子类)的无参构造方法,然后在通过子类的无参构造方法里面super(XX)间接访问父类的有参。




  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值