Java学习笔记:继承知识及特点介绍
作为面向对象的三大特性之一,继承同样是我们必须掌握的知识,下面我会对继承它的一些理论知识与代码示例进行介绍。
一、概述
继承描述的是事物之间的所属关系。例如,兔子属于食草动物,食草动物属于动物。它们之间有相同的行为,也有不同的行为,如果分别要进行定义,那些相同的行为还要再次定义会就会显得麻烦,所以我们把那些相同的行为重新定义到一个新类中,在其它类需要用她的时候在调用它就好。定义那些共同的行为的类叫做父类,而调用它们的类叫子类。
可见,父类更通用,子类更具体。我们通过继承,可以使多种事物之间形成一种关系体系。因此通俗的讲,继承就是子类继承父类的属性和行为,使得子类对象可以直接具有与父类相同的属性、相同的行为。子类可以直接访问父类中的非私有的属性和行为。
二、继承在java中的应用
那么,继承在java中到底如何运用呢?那就必须借助到extends关键字了
发现,咱们并没有在Studnet类和Teacher类中定义eat方法,但咱们还能正常调用eat方法,这就是继承的体现。
·继承的优点
1.提高代码的复用性(减少代码冗余,相同代码重复利用)。
2.使类与类之间产生了关系。
三、子类不能继承的内容
并不是父类的所有内容都可以给子类继承的,有一些内容是子类无法继承的。
如:子类不能继承父类的构造方法,因为构造方法要求和当前类名必须一致;子类可以继承父类的私有成员,但是不能直接使用,必须间接使用,要提供get set方法。
私有化的成员变量和成员方法是不能被访问的,只能在本类中调用,所以子类继承父类并不是继承父类中的所有内容。
四、继承特点
只需明确一点,java只支持单继承,不支持多继承,但支持多重继承。
五、继承后成员变量的特点
在上面的测试类代码中,我仅仅只创建了子类对象,并没有创建父类对象,但在程序运行中却使用了父类中的成员变量,这说明在程序中已经为父类的成员变量开辟了空间。所以,当子类继承了父类,在创建子类对象的时候,堆中的子类对象中会划分出一片空间来保存父类中的成员变量。
上述代码创建子类对象,给堆中子类和父类中的成员变量分别隐式初始化值后,创建好的对象会去调用子类的无参构造函数,在执行无参构造函数里面的代码之前,会先执行隐式三步,即调用父类中的构造函数super().
说明:super具有几个作用:
1.super(实参) 调用父类的构造方法
2.super.父类的成员变量:使用父类的成员变量
3.super.父类的成员方法(实参)
六、继承中成员方法的特点
首先是子类中含有不同名方法的调用顺序,原则是就近原则,子类中没有而父类中有,执行父类中的方法,子类中有父类中也有,执行子类中的方法。
七、方法重写
子类中出现与父类一模一样的方法时(返回值类型,方法名和参数列表都相同),会出现覆盖效果,也称为重写或者复写。声明不变,重新实现。
构成条件:
1.有继承
2.子类的方法返回值类型方法名参数列表(参数类型) 必须一致
3.子类的权限修饰符必须大于等于父类的权限修饰符
代码示例的话可以参考上面代码,差别不大。
八、构造器
构造器的名字是与类名一致的。所以子类是无法继承父类构造方法的。构造器的作用是初始化对象成员变量数据的。所以子类的初始化过程中,必须先执行父类的初始化动作。子类的构造方法中默认有一个super(),表示调用父类的构造方法,父类成员变量初始化后,才可以给子类使用。
免责声明:内容来源于公开网络,若涉及侵权联系尽快删除!
【免责声明】本文部分系转载,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责,如涉及作品内容、版权和其它问题,请在30日内与我们联系,我们会予以重改或删除相关文章,以保证您的权益!
Java开发高端课程免费试学
大咖讲师+项目实战全面提升你的职场竞争力
- 海量实战教程
- 1V1答疑解惑
- 行业动态分析
- 大神学习路径图
相关推荐
更多2024-04-08
2024-04-02
达内就业喜报
更多>Java开班时间
-
北京 丨 2月26日
火速抢座 -
上海 丨 2月26日
火速抢座 -
广州 丨 2月26日
火速抢座 -
兰州 丨 2月26日
火速抢座 -
杭州 丨 2月26日
火速抢座 -
南京 丨 2月26日
火速抢座 -
沈阳 丨 2月26日
火速抢座 -
大连 丨 2月26日
火速抢座 -
长春 丨 2月26日
火速抢座 -
哈尔滨 丨 2月26日
火速抢座 -
济南 丨 2月26日
火速抢座 -
青岛 丨 2月26日
火速抢座 -
烟台 丨 2月26日
火速抢座 -
西安 丨 2月26日
火速抢座 -
天津 丨 2月26日
火速抢座 -
石家庄 丨 2月26日
火速抢座 -
保定 丨 2月26日
火速抢座 -
郑州 丨 2月26日
火速抢座 -
合肥 丨 2月26日
火速抢座 -
太原 丨 2月26日
火速抢座 -
苏州 丨 2月26日
火速抢座 -
武汉 丨 2月26日
火速抢座 -
成都 丨 2月26日
火速抢座 -
重庆 丨 2月26日
火速抢座 -
厦门 丨 2月26日
火速抢座 -
福州 丨 2月26日
火速抢座 -
珠海 丨 2月26日
火速抢座 -
南宁 丨 2月26日
火速抢座 -
东莞 丨 2月26日
火速抢座 -
贵阳 丨 2月26日
火速抢座 -
昆明 丨 2月26日
火速抢座 -
洛阳 丨 2月26日
火速抢座 -
临沂 丨 2月26日
火速抢座 -
潍坊 丨 2月26日
火速抢座 -
运城 丨 2月26日
火速抢座 -
呼和浩特丨2月26日
火速抢座 -
长沙 丨 2月26日
火速抢座 -
南昌 丨 2月26日
火速抢座 -
宁波 丨 2月26日
火速抢座 -
深圳 丨 2月26日
火速抢座 -
大庆 丨 2月26日
火速抢座