您的位置:首页 > 其它

为什么使用接口二(Adapter design pattern)

2017-02-18 22:57 288 查看
Adapter design pattern:自己翻译:过渡类设计模式

 1、发现需要的功能,网上现成的

 2、而且不需要改。

 3、加一个过渡类就可以使用。

  现在主要是写过渡类:

例如: 基础类库已经有:

                 1、接口基类processor

                            方法:object process(object  input){}

                  2、公共使用类 Apply(面对功能使用者)

                                    public static void process(Processor p,Object s)

                3、public abstract class StringProcessor implements Processor{} 

                      功能实现类:字符转大写,字符转小写。

功能实现者(网上现成的):

    发现有一个DateCast的基类 ,有 “ 字符转日期 ” 功能,想加到自己的基础类库中。

  public class DataCast {
    public Date  process(Object input) {return ((Date)input);}

}

class  DatoStr   extends DataCast{

public Date  process(Object input) { Date da=null;  return  da;} //只写一点框架,

}

开始工作流程:(新增的)

 1.写DataCastAdapter  过渡类,实现接口 和 封装(网上拷贝的类)

public class DataCastAdapter  implements Processor{

  DataCast da;  
public DataCastAdapter(DataCast da) {
this.da = da;
}
@Override
public String name() {
// TODO Auto-generated method stub
return null;
}
@Override
public Date process(Object input) {
// TODO Auto-generated method stub
return da.process((String)input);
}

 2.功能使用者

    public void test() {
Apply.process(new DataCastAdapter(new DatoStr()),"2016-02-01"); 
}

  只做了两步,

    增加 1.过渡类   2.功能使用者的参数变一下。

 你的基础类库又增加一项功能

    利用 接口,过渡设计模式和继承 可以不断扩大自己的 功能库。
    不久以后自己也可以拥有像jdk一样的功能库,想想是多么棒的一件事情。

  * 树结构中

    接口 横 发展

    继承 竖 发展

 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  Adapter design patte