1 命令模式
某个行为的具体实现无法确定。必须等到执行该方法时才可以确定,使用一个接口参数来表示未知的处理行为,通过接口的实现类的对象来确定未知的行为。
接口:
public interface Command {
public void process(Integer[] data);
}
实现类:
public class AddCommand implements Command{
@Override
public void process(Integer[] data) {
// TODO Auto-generated method stub
for (int i : data) {
System.out.println("AddCommand"+i);
}
}
}
public class PrintCommand implements Command {
@Override
public void process(Integer[] data) {
// TODO Auto-generated method stub
for (int i : data) {
System.out.println("PrintCommand"+i);
}
}
}
执行类:
public class ProcessArray {
public void process(Integer[] data,Command cmd){
cmd.process(data);
}
}
测试:
public class TextMain {
public static void main(String[] args){
ProcessArray processArray=new ProcessArray();
Integer[] data=new Integer[]{1,2,3,4,5};
processArray.process(data, new PrintCommand());
}
}
命令模式通过创建执行类传递一个接口引用参数,传入不同的实现类来实现解藕。