将分部实现添加到抽象方法



实现抽象方法但仍必须从子类实现的设计的最佳方法是什么?目前这听起来很生疏,所以我将对其进行说明:

abstract class Foo {
    abstract void update();
}
abstract class Bar {
    void update() {
        //Do something
        update_();
        //Do something else
    }
    abstract void update_();
}

所以基本上,我想要一种方法来向抽象方法添加一些实现,而不会停止它的传播。我觉得简单地重命名该方法会创建不干净的代码。

解决此问题的最佳方法是什么?它只是重命名方法吗?还是最好完全避免这种模式?

我认为您要做的是创建策略模式。简单地说,你需要创建一个抽象类并实现一个使用许多已经实现(抽象的(方法的主方法。

最新更新