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

时间:2017-05-27 05:57:00

标签: java oop design-patterns methods abstract-class

实现抽象方法的设计的最佳方法是什么,但仍然需要从子类实现。这听起来很生疏,所以我会说明一下:

abstract class Foo {
    abstract void update();
}

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

    abstract void update_();
}

基本上,我想要一种方法来为抽象方法添加一些实现,而不会阻止它传播。我觉得简单地重命名方法会产生不干净的代码。

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

1 个答案:

答案 0 :(得分:0)

我认为你要做的就是创建Strategy pattern。简单地说,您需要创建一个单独的抽象类并实现一个主要方法,该方法使用许多尚未实现的方法(抽象的说法)。