java - 使用哪种设计模式可以轻松添加新算法?

标签 java design-patterns

我正在尝试解决这个问题必须使用哪种设计模式:

我有计算机和算法类(class)

1) 可能有很多 Computer 实例

2) 每台计算机只能有一个算法实例

3)算法是某种抽象,它应该有一个void“计算”

4)具体算法位于ConcreteAlg1、ConcreteAlg2等类中,因此可能有很多不同的具体算法类

我的目标是创建一个计算机实例,在其中创建新的 ConcreteAlg235 实例,而不知道添加了某个类 ConcreteAlg235。所以我的目标是轻松创建新的算法类并在 Computer 类的实例中创建其实例,而无需编辑 Computer 类的代码。

想想看,就像我想做一些专有软件,并为用户提供添加新算法的机会,并为自己提供易于维护的源代码。

感谢您的任何想法

最佳答案

关于java - 使用哪种设计模式可以轻松添加新算法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9382604/

相关文章:

java - Spring-Boot:同时处理多个请求

java - 如何在我的 SomethingManager 类的实现之间切换?

java - 在 Java 中,如何围绕在更改属性时调用方法的对象构建 "proxy wrapper"?

language-agnostic - 构建器是否应该在交付产品后重置其构建环境

使用 1 个菜单和许多 UIPopoverController 的基本应用程序的 iOS 设计模式......?

java - 如何连接EJB、REST和Client?

java - Android 构建失败 com.android.dex.DexException : Multiple dex files define Landroid/support

java - 数据库连接?

java - 如何在 gradle jar 构建过程中更新属性文件中的值?

asp.net-mvc-3 - 使用 for 循环是在 ASP.NET MVC 应用程序中添加多个相似数据库条目的最优雅的方法吗? ( C# )