首页 > 解决方案 > 我应该如何设计 Java 类?

问题描述

我需要解决一个java设计问题。我正在实现一个通用的 ConfigurationRetriever,它将返回用户需要的配置。

我有多个 *Configuration 对象,需要根据用户提供的时间间隔自动刷新。客户端应该能够提供它需要的配置列表。检索器应为用户提供检索自动更新配置的方法。我应该如何设计这个?哪种设计模式更适合这个问题?

这是示例课程。


    class AConfiguration {}

    class BConfiguration {}

    class CConfiguration {}


    class ConfigurationRetriever {


        AConfiguration getAConfiguration() {}

        BConfiguration getBConfiguration() {}

        CConfiguration getCConfiguration() {}

    }

我想在 ConfigurationRetriever 类中添加其他字段。

long timePeriod; // This indicates hhow frequently configurations should be auto updated.

List<String> configNames; // This indicates which configs should be retrieved. e.g { "AConfiguration", "CConfiguration" }

根据 timePeriod 将有一个 ScheduledExecutorService 它将继续更新 configNames 列表中提供的配置。

我应该如何设计这些课程?哪种设计模式适合这里?

标签: javadesign-patterns

解决方案


看起来您正在寻找一个简单的存储库模式。

更多信息在这里:https ://deviq.com/repository-pattern/


推荐阅读