3

我发现我需要经常支持组合而不是继承,因此我需要生成的许多代码行都是由 theprivate final Contract implementationContract接口方法之间的映射组成的。

(可预测的)映射示例

public abstract class Sloth<T> extends BaseAnimal implements Valuator<T> {

    private final Valuator<T> valuator = new GenericValuator<T>();

    @Override
    public void setValue(T value) {
        valuator.setValue(value);
    }

    @Override
    public void clearValue() {
        valuator.clearValue();
    }

    @Override
    public T getDefault() {
        return valuator.getDefault();
    }

    @Override
    public T getValue() {
        return valuator.getValue();
    }

    @Override
    public void addStorageBidListeners(OnStorageBid<T>... onStorageBid) {
        valuator.addStorageBidListeners(onStorageBid);
    }

}

有没有办法自动生成这个映射:

  • 原则上只提供接口和实现就足够了?
  • 目前我正在手动写出所有valuator.映射,我希望有这样一种自动重构的捷径吗?
4

1 回答 1

3

您可以使用Alt + Ins然后选择Delegate methods..

在第一步中,您应该选择您的财产。在您的示例中,它是评估器。在下一步中选择方法。

于 2012-05-31T11:20:22.133 回答