继承
来源:互联网 发布:gis软件开发工程师 编辑:程序博客网 时间:2024/04/30 02:02
继承的好处:
1、继承的出现提高了代码的复用性,提高软件开发效率。
2、继承的出现让类与类之间产生了关系,提供了多态的前提。
单继承,多重继承。
当子父类中出现了同名成员变量时,在子类中若要访问父类中的成员变量,必须使用关键字super来完成。super用来表示当前对象中包含的父类对象空间的引用。
当在程序中通过对象调用方法时,会先在子类中查找有没有对应的方法,若子类中存在就会执行子类中的方法,若子类中不存在就会执行父类中相应的方法。
子类中出现与父类一模一样的方法时,会出现覆盖操作,也称为override重写、复写或者覆盖。
方法重写(覆盖)的应用:
当子类需要父类的功能,而功能主体子类有自己特有内容时,可以重写父类中的方法,这样,即沿袭了父类的功能,又定义了子类特有的内容。
举例:比如手机,当描述一个手机时,它具有发短信,打电话,显示来电号码功能,后期由于手机需要在来电显示功能中增加显示姓名和头像,这时可以重新定义一个类描述智能手机,并继承原有描述手机的类。并在新定义的类中覆盖来电显示功能,在其中增加显示姓名和头像功能。
在子类中,访问父类中的成员方法格式:
super.父类中的成员方法();
重写需要注意的细节问题:
子类方法覆盖父类方法,必须要保证权限大于等于父类权限。
抽象类
抽象类的特点:
1、抽象类和抽象方法都需要被abstract修饰。抽象方法一定要定义在抽象类中。
2、抽象类不可以直接创建对象,原因:调用抽象方法没有意义。
3、只有覆盖了抽象类中所有的抽象方法后,其子类才可以创建对象。否则该子类还是一个抽象类。 之所以继承抽象类,更多的是在思 想,是面对共性类型操作会更简单。
面试题:
1,抽象类中是否可以没有抽象方法?如果可以,那么,该类还定义成抽象类有意义吗?为什么?
可以没有抽象方法,有意义,不会让其他人直接创建该类对象
- 继承
- 继承
- 继承
- 继承
- 继承
- 继承
- 继承
- 继承
- 继承
- 继承
- 继承
- 继承
- 继承
- 继承
- 继承
- 继承
- 继承
- 继承
- Android 国际货币格式化的一个小知识点
- 分布式系统事务一致性解决方案
- 八周第一次课 2017.12.4 linux任务计划cron、chkconfig工具、systemd管理服务、unit介绍、target介绍
- 字符集(ASCII、GB***、Big5、Unicode)及字符编码(UTF-*等)
- stl中map的使用
- 继承
- spring细节讨论
- Python入门到实践(9)-类的继承
- HTML5(四)
- 11,数据挖掘环境搭建-hive安装
- 期末考试 编程题#6:MyString(Coursera 程序设计与算法 专项课程3 C++程序设计 郭炜、刘家瑛;OpenJudge)
- IAR for ARM系列教程(一)_新建软件工程详细过程
- elasticseach 和hbase 在海量数据存储上哪个好
- 吴恩达(Andrew Ng)深度学习工程师笔记