JAVA策略设计模式

一个来自《Thinking in Java》的一个例子,简单铺一下,不做过多的解释,有基础的人可以看看,一个短小精悍的设计模式。
新建一个父类:

public class Processor {

public String name() {
    return getClass().getName();
}

Object process(Object input) {
    return input;
}

}

三个子类:
1、变成大写

public class Upcase extends Processor {

String process (Object input) {
    return ((String)input).toUpperCase();
}

}

2、变成小写

public class Downcase extends Processor {

String process(Object input){
    return ((String)input).toLowerCase();
}

}

3、变成数组

import java.util.Arrays;

public class Splitter extends Processor {

String process (Object input){
    return Arrays.toString(((String)input).split(" "));
}

}

运行类:

public class Apply {

public static String s = "I'm a SUPERMAN,Woohoo!!";

public static void process(Processor p, Object s) {
    System.out.println("Using processor " + p.name());
    System.out.println(p.process(s));
}

public static void main(String[] args) {
    process(new Upcase(), s);
    process(new Downcase(), s);
    process(new Splitter(), s);
}

}

   好了,就是这么简单。我是有点不懂为什么叫策略设计模式,如果有人看到我的话,又刚好会,望指教。

推荐阅读更多精彩内容

  • /Library/Java/JavaVirtualMachines/jdk-9.jdk/Contents/Home...
    一个会写诗的程序员阅读 2,187评论 2 6
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 84,080评论 14 122
  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    会飞的鱼69阅读 23,446评论 18 391
  • 泛型 对象和实例是一个意思,类与对象的关系就像数据类型和变量一样。 泛型的主要目的之一就是用来指定类(如:容器)要...
    yueyue_projects阅读 123评论 0 0
  • 晚上的时候死党给我打电话说有人想我了让我早点回家聚会 我愣了又愣 貌似没有人会牵挂我吧 他告诉我是小胖胖 我沉默又...
    时光嘲笑了谁的执着阅读 30评论 1 0