Java设计模式之策略
2015-06-04 10:08
204 查看
在主方法调用 int main(String [] args){ //通过捡垃圾赚钱 }
策略模式适用于当一个应用程序需要实现一种特定的服务或者功能,而且该程序有多种实现方式时使用。
在开发过程中,我们有可能处理同一件事而调用不同的算法,也许你可以通过if else语句来把不同的算法封装起来。如果只有一两种算法这样写还好,但是如果有比较多的算法,用if else方法写出来的代码就会变得很混乱。
那么我们接下来就说一下利用设计模式--策略来解决这个问题
假设我们需要用到“赚钱”的算法:
先定义一个接口
Inteface IStrategy{ public void make_Money(); }
然后定义两个封装着不同算法的两个可以”赚钱“的类:
class Garbage_collecting implements IStrategy{ public void make_Money(){ System.out.println("捡垃圾去了"); } } class Go_to_work implements IStrategy{ public void make_Money(){ System.out.println("上班去了"); } }好了,我们已经定义了两个赚钱的算法接下来再写一个方法调用它们:
public class Money{ public void getMoney(IStrategy is){ System.out.println("开始赚钱"); is.make_Money(); System.out.println("结束赚钱"); } }
最后就是调用它们啦,如果想调用捡垃圾的赚钱方法:
<pre name="code" class="java">int main(String [] args){ //通过捡垃圾赚钱 Garbage_collecting gc=new Garbage_collecting(); Money money=new Money(); money.getMoney(gc); }
相关文章推荐
- 推荐2个在Java编码过程好用的工具
- JAVA实现冒泡排序
- 在spring中配置mybatis 中自定义的拦截器插件
- 关于JAVA的接口与抽象
- Eclipse中自动提示的参数变成arg0,arg1的解决办法
- 安卓项目中的R.java文件丢失如何解决
- JAVA 解析excel兼容03 和07
- MyEclipse8.5 注册码 有效期到2016年
- 【Java编程思想】(2)访问权限控制
- webService jdk版本为1.6一下报错解决
- 获取每月第一天最后一天 java
- Hive一点一滴系列之Eclipse调用hive执行操作
- spring源码gradle获得eclipse工程时,spring-beans-groovy项目GroovyDynamicElementReader报错解决
- LeetCode_15---3Sum
- No default constructor for entity Java无参构造函数
- spring中@Resource和@Autowired的区别是什么?
- JDK_jvisualvm访问远程weblogic服务
- java之 ------ 图形界面(三)
- android:打开Eclipse之后android项目都报错怎么解决
- java之 ------ 图形界面(二)