java 策略模式

本文通过Java代码实例详细介绍了策略模式的概念,并展示了如何使用接口和类来实现不同算法的选择,最后通过一个简单的应用案例来验证策略模式的实用性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

策略模式就是好多算法,方式封装到一起,然后根据不同的需求选择不同的算法

例子:

首先一个接口:

public static interface a
   {
  public int num (int num1, int num2);
   }


然后实现该接口的类(就是不同的算法类):

public static class b implements a 
   {
@Override
public int num(int num1, int num2) {
return num1+num2;
}
   }


public static class c implements a 
   {
@Override
public int num(int num1, int num2) {
return num1-num2;
}
   }


然后写一个选择算法的类:

 public static class context 
   {
  private a aa;
  
  public context(a aa)
  {
  this.aa = aa;
  }
  
  public int num (int num1, int num2)
  {
 return aa.num(num1, num2);   
  }
   }


最后一个demo:

public static class demo
   {
  public static void main(String [] args)
  {
  context con = new context(new b());
  context con1 = new context(new c());
  
  System.out.println("1的答案   "+con.num(1, 2));
  System.out.println("2的答案  "+con1.num(1, 2));
  }
   }


输出结果:

1的答案   3
2的答案  -1



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值