策略 设计模式

概念

使用场景

一个类定义了多种行为,并且这些行为在这个类中
代替 if else
不要用if else

其实就是 让他们 实现了同一个接口
在主类中,放了一 这个接口的引用,通过这个接口去掉 接口中的方法。
策略模式 满足开闭原则

策略模式 在 android 中的实际应用

1 Volley 中对于 HttpStack的设计就是用到了策略模式

public interface HttpStack {
}
public class HttpClientStack implements HttpStack {
}
  if (stack == null) {
            if (Build.VERSION.SDK_INT >= 9) {
                stack = new HurlStack();
            } else {
                // Prior to Gingerbread, HttpUrlConnection was unreliable.
                // See: http://android-developers.blogspot.com/2011/09/androids-http-clients.html
                stack = new HttpClientStack(AndroidHttpClient.newInstance(userAgent));
            }
        }

这就是策略

你可能感兴趣的:(策略 设计模式)