【发布时间】:2017-04-02 08:54:46
【问题描述】:
现在刚接触一些 Java。在 OCA 7 书中看到了这个扩展类,只是想知道 Baz 类如何使用 go 方法并期望返回类型 String 但参数采用 int。然后返回为空。
Baz 是合法构造还是会返回编译错误?我的意思是它返回类型 String,但接受一个 int 参数,然后返回 null。这怎么可能?
public class Foo {
void go() {}
}
public class Baz extends Foo {
String go(int x) {
return null;
}
}
【问题讨论】:
-
go()和go(int)相当 different methods。不要混淆它们具有相同的名称。他们的签名不同。 -
@dhke 我认为他根本不关心继承。他只是对它应该返回
String时返回null感到困惑。 -
"Baz 是合法的构造还是会返回编译错误?"那么,当你尝试它时发生了什么?
-
这是书上的,我没用IDE