修改仅适用于当前对象,而不适用于类本身。
因此,如果我们创建该类的另一个对象,start方法的实现将是该类中定义的对象。
class Machine {
public void start() {
System.out.println("Starting...");
}
}
public static void main(String[ ] args) {
Machine m1 = new Machine() {
@Override public void start() {
System.out.println("Wooooo");
}
};
Machine m2 = new Machine();
m2.start();
}
//输出 "Starting..."