java - 你如何实例化一个内部类并实现一个额外的接口(interface)

标签 java interface inner-classes

我需要在 Java 中创建一个内部类,并让该内部类也实现一个“可选”标记接口(interface)。

例如我希望能够做的是写

final Object obj1 = new Adapter() implements MarkerInterface {
    @Override
    public void adapterMethod() {

    }
};

final Object obj2 = new Adapter() {
    @Override
    public void adapterMethod() {

    }
};

我意识到上面不会编译。

我可以采取什么方法来获得预期的结果?

最佳答案

使其非匿名:

private [static] class MyAdapter extends Adapter implements MarkerInterface {
    ...
}

...

MyAdapter a = new MyAdapter();

如果您真的愿意,您甚至可以将此类声明嵌套在您的方法中。

关于java - 你如何实例化一个内部类并实现一个额外的接口(interface),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43932901/

相关文章:

java - asm 类文件太大

interface - AutoMoqCustomization 适用于抽象类吗?

java - 该代码块之外的匿名内部类和字段

java - 将内部类扩展为嵌套类?

java - Java 中的内部类创建对 self 的引用作为属性

java - 如何循环遍历结果集并以均等分割获取行

java - 编写 orm.xml 的最佳实践

java - fork 的虚拟机没有正确告别就终止了。 VM 崩溃或调用 System.exit

java - 接口(interface)、继承和子类型

c# - 用 C# dll 替换 c api dll 而不影响客户端