Csharp/CSharp Tutorial/Design Patterns/Adapter Pattern
Версия от 15:31, 26 мая 2010; (обсуждение)
Adapter Pattern
using System;
public sealed class Translate
{
public string UStoUK()
{
return "USD to GBP is...";
}
public string UStoCND()
{
return "USD to CND is...";
}
public Translate(){;}
}
public class Adapter
{
private Translate change;
public string USD_GBP ()
{
return "Conversion " + this.change.UStoUK();
}
public string USD_CND()
{
return "Conversion " + this.change.UStoCND();
}
public string USD_AUD()
{
return "Conversion USD to AUD is...";
}
public string USD_JPY()
{
return "Conversion USD to JNY is...";
}
public Adapter()
{
change = new Translate();
}
}
public class MyRate
{
private Adapter adapt;
public string MyRate_USD_GBP()
{
return this.adapt.USD_GBP();
}
public string MyRate_USD_CND()
{
return this.adapt.USD_CND();
}
public string MyRate_USD_AUD()
{
return this.adapt.USD_AUD();
}
public MyRate()
{
adapt = new Adapter();
}
}
public class Client
{
static void Main(string[] args)
{
MyRate afx = new MyRate();
Console.WriteLine(afx.MyRate_USD_GBP());
Console.WriteLine(afx.MyRate_USD_CND());
Console.WriteLine(afx.MyRate_USD_AUD());
}
}