策略设计模式是什么
我写一个接口
然后写一个类去使用这个接口的方法
使用的时候把实现类注入进去就可以实现这个类方法的复用了
说起来不是很直观 下面又代码显示
代码实现
接口
public interface Operation {
public int OperationMethod(int a,int b);
}
使用接口的类
public class UseOperation {
private Operation op;
public int UseOperationMethod(int a,int b){
return op.OperationMethod(a,b);
}
public Operation getOp() {
return op;
}
public void setOp(Operation op) {
this.op = op;
}
}
接口的实现
加法实现
public class OperationAdd implements Operation{
@Override
public int OperationMethod(int a, int b) {
return a+b;
}
}
减法实现
public class OperationSub implements Operation{
@Override
public int OperationMethod(int a, int b) {
return a-b;
}
}
策略模式的使用
public class Test {
public static void main(String[] args) {
UseOperation useOperation = new UseOperation();
//注入加法
useOperation.setOp(new OperationAdd());
int i = useOperation.UseOperationMethod(1, 1);
System.out.println(i);
System.out.println("=========");
useOperation.setOp(new OperationSub());
int i1 = useOperation.UseOperationMethod(1, 1);
System.out.println(i1);
}
}