当前位置: 主页 > JAVA语言

java 策略模式 例子-Java策略模式:定义一个使用策略的上下文类示例

发布时间:2023-06-15 11:08   浏览次数:次   作者:佚名

Java 是一种面向对象的编程语言,其特点是可移植性、安全性、高性能和易学易用。要编写一个 Java 策略模式,可以按照以下步骤进行:1. 首先,定义一个接口,它将是所有具体策略的基础。该接口应包含一个方法,以实现策略的核心逻辑。2. 接着,创建一个或多个实现接口的具体策略类。每个策略类应该包含自己的实现,以处理特定的情况。3. 定义一个使用策略的上下文类。这个类应该包含一个引用策略接口的成员变量,以及一个方法,用于设置当前策略。4. 在上下文类中,添加一个方法,它将接受一个策略对象作为参数,并将其设置为当前策略。5. 最后,实例化一个上下文对象,并调用它的方法,以执行所需的操作。下面是一个简单的示例代码,演示了如何使用 Java 编写一个策略模式:```// 定义策略接口interface Strategy {int doOperation(int num1, int num2);}// 创建具体策略类class OperationAdd implements Strategy {public int doOperation(int num1, int num2) {return num1 + num2;}}class OperationSubtract implements Strategy {public int doOperation(int num1, int num2) {return num1 - num2;}}class OperationMultiply implements Strategy {public int doOperation(int num1, int num2) {return num1 * num2;}}// 定义上下文类class Context {private Strategy strategy;public Context(Strategy strategy){this.strategy = strategy;}public int executeStrategy(int num1, int num2){return strategy.doOperation(num1, num2);}}// 使用策略模式public class Main {public static void main(String[] args) {Context context = new Context(new OperationAdd());System.out.println("10 + 5 = " + context.executeStrategy(10, 5));context = new Context(new OperationSubtract());System.out.println("10 - 5 = " + context.executeStrategy(10, 5));context = new Context(new OperationMultiply());System.out.println("10 * 5 = " + context.executeStrategy(10, 5));}}```在这个示例中,我们首先定义了一个 Strategy 接口,它包含一个 doOperation() 方法。然后,我们创建了三个具体策略类,它们实现了这个接口,并提供了自己的实现。接下来java 策略模式 例子,我们定义了一个上下文类 Contextjava 策略模式 例子,它包含一个 Strategy 成员变量。我们还为 Context 类添加了一个 executeStrategy() 方法,它将接受两个数字作为参数,并根据当前策略执行适当的操作。最后,在 main() 方法中