继承相关知识点

一、继承简介

9574f75824344e78869c05fd176e029b.jpg

 子类在拥有自己的内容的同时,还可以使用父类中的内容

二、继承的好处与弊端

2381df585619464f8bfff0346b18ff34.jpg

 三、继承中变量的访问特点

5dc3fefe561b4460914cd1eab989dc40.jpg

 先去自己的局部变量里找,也就是在方法中定义的变量,找不到的话,再去成员变量找,最后从父类中找

四、super关键字

作用类似于this关键字

23de17d5d2814d22a4c7c90108f90e70.jpg

2926168e6d9c4af0b5c1571cc69026be.jpg

 五、继承中构造方法的访问特点

1.

d8aef078b0ab4c48bfaaa1060f69dfbf.jpg

 就是在调用子类构造方法时,无论调用的是子类的有参还是无参,都会首先默认调用父类的无参构造方法

2.当父类中没有无参构造方法时的解决办法

64de970b369a445b9f53dbd87bd8a264.jpg

 

两种办法 

第一、

562a76001d284a638413ef85658dc466.jpg

66740803f2fb4d95adca43a745aabe6e.jpg

 (用super向父类传入参数,从而调用有参构造方法)

第二、eb727bc231d34ad8b3d3f3df9304fefb.jpg

 (在父类中手写一个无参构造方法)

六、继承中成员方法的访问特点

da7612a4d49a4ae2a2154580d9deb888.jpg

 

如果子类函数里利用super调用父类函数,那么,会先输出父类再输出子类,如下图 

4aa1469536744373a9efac8e8c534a0b.jpg

 

e46f57f2f0da40c0b4d5e6e6b8371e1b.jpg

七、方法重写

d34b7313603242fab030444aaf0595dd.jpg

 

可以将父类中的方法声明(也就是定义方法的那一行复制到子类中),并在子类重写的方法中使用super关键字去调用父类中的方法,如下

79af58754f084404b6b315562afc5caa.jpg

f74045c4130d478aacb377c61773475f.jpg

 关于方法重写有一个注解,可以检查是否重写有无

如下d54171adfb984fcdac998e35d4e5d1b0.jpg

 八、方法重写的注意事项

608db427af8549fab6a55f99cb0572fc.jpg

 

(ps 默认 就是指定义方法时,不用修饰符例如public修饰,而是直接static 方法名(参数){})

其中的私有方法不能被重写,如下01000c0007364ea5a96d694b5022b257.jpg

641245566f554799a2719fbdaac71116.jpg

九、继承的注意事项

144ff19a145f4a2ca08020fc1ee7fb92.jpg

 

十、继承变量补充

0f575e55c66c4a4ba3a8d97a34c3c9c6.jpg

 

图中的this.name 是指父类中的成员变量,所以受到启发,可以在子类中调用父类的成员变量,但是前提是 父类成员变量不能用private修饰,private修饰的成员变量不能在子类中被继承使用

 

注意

super.(成员变量) 访问父类,从父类里面往外拿

this.(成员变量)向父类中传入参数,往父类里面送

 

 

解决办法:

可以在子类中调用父类的有参构造器,从而将参数传入父类,如下图

ae81643a1d2341ae9439aeb2b40bb47a.jpg


 

 

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值