我有一个名为“Design”的类,我正在编写以下代码来扩展该类以包含一个名为 sayHello() 的新函数。然而它似乎不起作用。我是否只允许以这种方式覆盖现有函数?
Design design1 = new Design() {
public void sayHello() {
System.out.println("hello");
}
};
design1.sayHello(); // this gives an error "function not found"
最佳答案
所以这是合乎逻辑的。 您正在重写父类(super class)并将其分配给父类(super class)的实例变量。
由于实例变量是父类(super class)类型,因此只能访问父类(super class)中可用的方法。
关于java - java 子类中内联的新函数声明,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27309350/