如何使用具有更多适应性的适配器模式?

时间:2012-06-03 21:14:44

标签: design-patterns

我只是想知道如何使用适配器模式和更多适应者?

class MainApp
{
    static void Main()
    {
        Target target = new Adapter();
        target.Request();

        Console.ReadKey();
    }
}

class Target
{
    public virtual void Request()
    {
        Console.WriteLine("Called Target Request()");
    }
}

class Adapter : Target
{
    private Adaptee _adaptee = new Adaptee();

    public override void Request()
    {
        _adaptee.SpecificRequest();
    }
}

class Adaptee
{
    public void SpecificRequest()
    {
        Console.WriteLine("Called SpecificRequest()");
    }
}

正如您在本案例中所看到的,我们只有一个适应者,但如果我们有多个不具备任何相似性的适应者,我不确定如何使用该模式。

感谢任何能提出建议的人。

2 个答案:

答案 0 :(得分:1)

装饰适配器并实现一个通用接口来表示一组装饰适配器?

答案 1 :(得分:1)

适配器使某些适配器适应给定的接口。因此,如果您想与更多适应者共享一个适配器,那么只有当他们共享相同的界面时才有意义。所以你总是要“有一些相似之处”。