【发布时间】:2012-01-18 16:11:10
【问题描述】:
我在 Java 中看到过几个与此类似的示例,希望有人能解释发生了什么。似乎可以内联定义一个新类,这对我来说真的很奇怪。
第一行是预期的,因为它只是 toString。然而,第二个似乎可以内联覆盖该函数。
这有什么技术术语吗?
或者任何更深入的文档?
如果我有以下代码:
public class Apple {
public String toString() {
return "original apple";
}
}
public class Driver {
public static void main(String[] args) {
System.out.println("first: " + new Apple());
System.out.println("second: " +
new Apple() {
public String toString() {
return "modified apple";
}
}
);
}
}
代码输出:
first: original apple
second: modified apple
【问题讨论】:
标签: java inheritance overriding anonymous-class