interface Parent {
public String name(Object b);
}
class Child implements Parent {
public String name(Object b) {
return [???];
}
public String name(String b) {
return "Child " + [???];
}
}
public class Exercise {
public static void main(String[] args) {
Parent p = new Child();
assert p.name("String").equals("Child String");
}
}
有没有办法取代' [???]'在上面的代码中,断言返回trues?
答案 0 :(得分:0)
我不明白为什么方法name
被重载了。但您可以使用instanceof
来检查参数b
的类型。
public String name(Object b) {
if (b instanceof String) {
return name((String) b);
}
return "something else";
}
public String name(String b) {
return "Child " + b;
}