任何人都可以解释以下代码的工作......?
interface myInterface{}
public class Main {
public static void main(String[] args) {
System.out.println(new myInterface(){public String toString(){return "myInterfacetoString";}});
System.out.println(new myInterface(){public String myFunction(){return "myInterfacemyFunction";}});
}
}
输出是...
myInterfacetoString
primitivedemo.Main$2@9304b1
所有答案都说 println() 语句中的 myInterface 是匿名类。但是由于我已经将它声明为接口,为什么它允许我创建同名的匿名类......?
再次...如果这些是匿名类,那么主类应该允许我给这些匿名类起任何名字..但是如果尝试这样做..我得到编译错误