方法是否重载了一种多态或其他形式?

cro*_*wso 4 java oop overloading

我有一个长期的怀疑.有人可以告诉我方法重载是一种多态的形式还是完全不同的东西?

Tom*_*icz 7

方法重载只是一种语法糖,允许您使用相同名称但不同参数的方法.它与多态性无关.方法重载通常用于定义接受不同参数的两个方法,例如:

public void println(boolean x) //...
public void println(char x) //...
Run Code Online (Sandbox Code Playgroud)

或者跳过某些参数并使用一些默认值:

public String substring(int beginIndex) //...
public String substring(int beginIndex, int endIndex) //...
Run Code Online (Sandbox Code Playgroud)

另一方面,方法重写是继承的基础,并且与多态性更密切相关.