无法实例化匿名类

问题描述

| 我在这段简单的代码上遇到2个错误:
public class Test {
    public static void main(String args[]) {
        O o = new O() {

        };
    }
}
错误:     Test.java:3:找不到符号     符号:O级     地点:班级考试     O o =新的O(){     ^     Test.java:3:找不到符号     符号:O级     地点:班级考试     O o =新的O(){                       ^ 怎么了     

解决方法

        对于匿名内部类,您应该扩展现有的类(并使用Polymorphism覆盖方法)或现有的接口。 使用此规则,代码将失败,因为不存在现有的类(类型)O。 尝试定义类,并使用多态性覆盖父类中所需的方法。     ,        正如评论所说,您必须在某个地方定义类。此代码应工作:
class O {}
public class Test {
    public static void main(String args[]) {
        O o = new O() {

        };
    }
}
    ,        尝试:
public class Test {
    public static void main(String args[]) {
        Test  o = new Test () {

        };
        System.out.println(o.getClass().getName());
    }
}
您将获得Test $ 1     

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...