人生若可如罗盘,就不需迷茫

龙其党(QQ:86813184)

类适配器与对象适配器的区别

适配器的目的是将已有类的功能提供给客户类,是一个中间者的角色。类适配器是客户类有一个接口规范的情况下可用,此时适配类只需作为功能类的子类,并实现接口并可,直接用功能类实现了客户类的要求。而对象适配类是在客户类没有提供接口的情况下用的,适配类作为客户类的子类,并在其中实例化一个功能类的对象,并调用此对象的方法实现适配,故称对象适配。

类适配器例子:

//客户接口
public Interface ICustomer
...{
public int CustomMethod();
}


//已有功能类
public class Action
...{
public Action()...{};
public int ActionMethod()
...{
//do something here
}

}


//类适配器
public class AdapterClass:Action,ICutomer
...{
public AdapterClass()...{};
public void CustumMethod()
...{
retun ActionMethod();
}

}

 对象适配器例子:

//客户类
public class Customer
...{
    
public virtual int CustomMethod();
}


//已有功能类
public class Action
...{
    
public Action()......{};
    
public int ActionMethod()
    
...{
         
//do something here
    }

}


//对象适配器
public class AdapterClass:Customer
...{
    
private Action ac;
    
public AdapterClass()......{};
    
public override void CustumMethod()
    
...{
        retun ac.ActionMethod();
    }

}
阅读更多
文章标签: action class
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭