public interface Strategy
{
public int method(int x,int y);
}
//抽象策略角色,由抽象类或者接口实现
public class AddStrategy implements Strategy
{
public int method(int x,int y)
{
return x+y;
}
}
//加法的实现类
public class SubStrategy implements Strategy
{
public int method(int x,int y)
{
return x-y;
}
}
//减法的实现类
public class MulityStrategy implements Strategy
{
public int method (int x,int y)
{
return x*y;
}
}
//乘法的实现类
public class ChuStrategy implements Strategy
{
public int method(int x,int y)
{
return x/y;
}
}
//除法的实现类
public class MediaClass
{
private Strategy strategy;
public MediaClass(Strategy strategy)
{
this.strategy=strategy;
}
public int calculate(int x,int y)
{
return strategy.method(x, y);
}
}
//环境角色,具有策略类的引用,供给客户调用!!!
public class CalcuTest
{
public static void main(String args[])
{
MediaClass add=new MediaClass(new AddStrategy());
int addvalue=add.calculate
使用策略模式实现加减乘除运算
最新推荐文章于 2022-08-05 18:55:53 发布
该博客介绍了如何利用策略模式来实现加减乘除四种基本算术运算。通过定义一个`Strategy`接口,创建了对应的加、减、乘、除四个实现类,并在`MediaClass`中使用策略模式进行计算操作。在`CalcuTest`测试类中,展示了如何实例化这些类并执行相应的计算任务。
摘要由CSDN通过智能技术生成