我对多态性,重载和压倒一切的概念很困惑,因为它似乎我也一样。 请解释这些概念,以及他们如何彼此不同
很迷茫,所以请指引我正确。
谢谢
我对多态性,重载和压倒一切的概念很困惑,因为它似乎我也一样。 请解释这些概念,以及他们如何彼此不同
很迷茫,所以请指引我正确。
谢谢
多态性可以通过压倒一切的实现。 在短字放,多态性指的是对象的以提供不同的行为取决于其自身的性质的能力(使用不同的实现)。 具体而言,取决于其在类层次结构的位置。
方法覆盖是当在一个超类或接口中定义的方法,通过它的子类中的一个重新定义,从而改变/更换超类提供的行为。 决定调用的实现,或者另一个动态拍摄在运行时根据不同的操作从所谓的对象。 注意重写时,方法的签名保持不变。
方法重载是无关的多态性。 它指的是定义不同形式的方法的(通常是通过接收不同的参数数目或类型)。 它可以被看作是静态的多态性。 决定调用的实现或其他在编码时间拍摄。 在这种情况下,方法的签名必须改变的通知。
运算符重载是不同的概念,涉及到多态,是指某种语言相关的经营者的能力不同的行为基于其操作数的类型(例如, +
可能意味着与串联String
S和另外与数字操作数) 。
该例子在维基百科是很说明问题。
以下相关问题可能也非常有用:
不久,没有他们是不一样的。
超载意味着创造与同名但不同参数的方法。
重写装置重新定义父类的方法的主体在子类中以改变的方法的行为。
多态是一个宽泛的概念,它包括覆盖和重载以及更多在它的范围。 多态性维基百科的描述可以帮助您了解多态性更好。 特别是亚型多态性(或包含多态性)部分中,你应该看看。