考虑以下代码:
public static void main(String[] args) {
File file = new File("C:\\someFile.txt") {
public void doStuff() {
// Do some stuff
}
};
file.doStuff(); // "Cannot resolve method"
}
当我们尝试调用我们新定义的方法doStuff()
时,这是不可能的。原因是它file
被声明为类型的对象,File
而不是我们新的匿名子类的实例。
所以,我的问题是,是否有任何“好”的方法来实现这种行为?除了显而易见的(即正确地声明类)之外。