java中继承关系学习小结

Posted zhchoutai

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java中继承关系学习小结相关的知识,希望对你有一定的参考价值。

继承:把多个类中同样的内容提取出来。定义到一个类中,其它类仅仅须要继承该类。就能够使用该类公开的属性和公开的方法。

?

继承的优点:提高代码的复用性。提高代码的可维护性。让类与类之间产生关系,是多态存在的一个前提。

?

继承的弊端:提高了类与类之间的耦合性。

?

开发的原则:低耦合。高内聚

耦合:类与类之间的关系

内聚:自己单独完毕某件事情的能力。

?

在Java中仅仅同意单继承。一个类假设没有显示的继承其它类。则该类的默认父类为Object类。

Object类是全部类的父类。

?

Java支持多层继承。

?

父类的公开方法能够訪问父类的私有方法和私有成员。

?

子类仅仅能继承父类全部非私有的成员(成员方法和成员变量)。

?

子类不能继承父类的构造方法,可是能够通过super()keyword去訪问父类的构造方法。

?

不要为了部分功能而去继承。

?

什么时候考虑採用继承?

继承体现的是is-a的关系。

採用假设法:有两个类A和B,假设A是B的一种详细体现,或者B是A的一种详细体现时。就能够採用继承。

?

继承中。成员变量的关系:子父类中各定义了一个同名成员变量时,子类中的成员变量会覆盖父类中的成员变量。在子类中能够通过super来调用父类中的同名变量。

?

在子类方法中訪问一个变量的查找顺序:

?a:在子类的相应的局部范围内查找。有就是用

?b:在子类的成员范围内查找,有就是用。

?c:在父类的成员范围内查找,有就是用。

? 假设都没有找到。则报错。

?

在一个类中,方法与方法之间是平级关系,方法之间不能訪问对方的局部变量。

?

super和this的差别:

???????? this代表本类对象的引用

???????? super代表父类存储空间的标示,相当于父类的引用。

this和super都能够訪问构造方法、成员变量和成员方法。

?

继承间构造方法之间的关系。

子类全部的构造方法默认都会去訪问父类的无參构造方法。

???????? 由于子类会继承父类中的数据,可能会用到父类中的数据,所以在子类初始化之前,一定要完毕父类的初始化。

每个构造方法的第一条语句默认都是:super

怎样父类中没有构造方法,该怎么办呢?

子类通过super去显示调用父类其它的带參的构造方法

子类通过this去调用本类的其它构造方法。本类其它构造也必须首先訪问了父类构造

一定要注意:

super(…)或者this(….)必须出如今第一条语句上。否则,就会有父类数据的多次初始化

?

继承间成员方法的关系

子父类中各定义了一个同名成员方法时,子类中的成员方法会覆盖父类中的成员方法。

在子类中能够通过super来调用父类中的同名方法。

通过子类对象去訪问一个方法的查找顺序:

???????? a:在子类中查找,假设找到就调用

???????? b:在父类中查找。假设找到就调用

假设都没有找到。就报错。不会查找父类的父类……

以上是关于java中继承关系学习小结的主要内容,如果未能解决你的问题,请参考以下文章

Java中继承关系的理解

java中继承的关系

201671010130 2016-2017-2 《Java程序设计》第十七周学习小结

Java中继承与多态(续篇)

集成学习之Adaboost算法原理小结

随机森林算法原理小结