日期:2014-05-20 浏览次数:20628 次
public class Test { public static void main(String[] args) { T t1 = new T1(); T t2 = new T2(); T t3 = new T3(); t1.go(); t2.go(); t3.go(); } } interface T{ public void go(); } class T1 implements T{ public void go(){ System.out.println("T1 go"); } } class T2 implements T{ public void go(){ System.out.println("T2 go"); } } class T3 implements T{ public void go(){ System.out.println("T3 go"); } }
------解决方案--------------------
当你想进行扩展的时候就会用。
比如一个项目的一个功能要打印:1。
这个项目被另一个客户使用,他说他这里要打印:2。
这时怎么办?你说直接改呗。
OK,那如果有N多家客户都有自己的需求。你要维护这N个项目,就要做N个项目备份。
有没有好办法?
对,这个功能直接写个接口,通过注入式运行项目,以后我只维护一个项目备份,只是这个功能有多个实现类。
这个例子不是很好,但很直观,很好理解。