0

我对压倒一切有疑问。

class base{
public void amethod(){}
}
class child extends base{
public void amethod(int i){}}

在这种情况下会发生什么?这些方法是否被认为是 2 个不同的方法?或者它是否仍然被覆盖?请澄清。

4

2 回答 2

6

这不是压倒一切,而是重载,并且这两者彼此无关。

看看Java教程

重载的方法通过传递给方法的参数的数量和类型来区分。在代码示例中,draw(String s) 和 draw(int i) 是不同且独特的方法,因为它们需要不同的参数类型。

于 2012-05-07T01:31:08.280 回答
0

覆盖是两个方法具有相同的名称和相同的返回类型,但不同的参数和覆盖意味着两个方法具有相同的名称、相同的参数、相同的返回类型但在两个方法中的主体必须不同

    public void amethod()
    public void amethod(int i)

我想你明白这是重载而不是压倒一切......

于 2015-03-21T18:05:26.400 回答