温馨提示×

Java策略模式怎么使用

小亿
92
2023-10-16 09:19:48
栏目: 编程语言

在Java中使用策略模式,首先需要定义一个接口,该接口表示一个策略的抽象。接着,针对不同的具体策略,实现该接口的多个实现类。最后,在使用策略的地方,通过传递不同的具体策略对象来实现不同的行为。

以下是一个简单的示例:

首先,定义一个策略接口:

public interface Strategy {
void execute();
}

接着,实现不同的具体策略类:

public class StrategyA implements Strategy {
@Override
public void execute() {
System.out.println("执行策略A");
}
}
public class StrategyB implements Strategy {
@Override
public void execute() {
System.out.println("执行策略B");
}
}
public class StrategyC implements Strategy {
@Override
public void execute() {
System.out.println("执行策略C");
}
}

最后,在使用策略的地方,通过传递不同的具体策略对象来实现不同的行为:

public class Context {
private Strategy strategy;
public void setStrategy(Strategy strategy) {
this.strategy = strategy;
}
public void executeStrategy() {
strategy.execute();
}
}
public class Main {
public static void main(String[] args) {
Context context = new Context();
// 设置策略A并执行
context.setStrategy(new StrategyA());
context.executeStrategy(); // 输出:执行策略A
// 设置策略B并执行
context.setStrategy(new StrategyB());
context.executeStrategy(); // 输出:执行策略B
// 设置策略C并执行
context.setStrategy(new StrategyC());
context.executeStrategy(); // 输出:执行策略C
}
}

通过上述示例,可以看到策略模式的使用方式。通过定义接口和多个实现类,可以实现不同的行为,并通过具体策略对象的传递来使用不同的策略。

0