如何覆盖包装类中的方法?

use*_*818 1 java methods extends overriding implements

我定义了以下类...

class Class2 implements ICommon {
    ....
    ICommon  wrappedClass;
    //delegate interface methods to wrapped class
}

class Class1 implements ICommon {
    //interface methods
    //specific methods
    public void method1() {
        ......
    }
}
Run Code Online (Sandbox Code Playgroud)

我需要Class1覆盖method1()Class2,但是我还是要实现的ICommon接口.有没有办法实现这一目标?

Mar*_*aux 5

您无法在不延伸的情况下覆盖.Class2必须扩展Class1,然后你才能覆盖.

class Class2 extends Class1 // no need for implements anymore, because class1 already implements
{

    @Override
    public void method1()
    {

    }
}
Run Code Online (Sandbox Code Playgroud)

知道这个设计意味着每个Class2都是Class1,就像每个Ant都是Bug一样.