Csharp/C Sharp/Design Patterns/Adapter Pattern — различия между версиями
Admin (обсуждение | вклад) м (1 версия) |
|
(нет различий)
|
Текущая версия на 11:38, 26 мая 2010
Adapter Pattern Demo
using System;
public sealed class ForeignExchange {
public string UStoUK() {
return "USD to GBP is...";
}
public string UStoCAN() {
return "USD to CND is...";
}
public ForeignExchange() { ;}
}
public class AdapterWrapper {
private Adapter adapt;
public string AdapterWrapper_USD_GBP() {
return this.adapt.USD_GBP();
}
public string AdapterWrapper_USD_CND() {
return this.adapt.USD_CND();
}
public string AdapterWrapper_USD_AUD() {
return this.adapt.USD_AUD();
}
public AdapterWrapper() {
adapt = new Adapter();
}
}
public class Adapter {
private ForeignExchange sourceCode;
public string USD_GBP() {
return "Conversion " + this.sourceCode.UStoUK();
}
public string USD_CND() {
return "Conversion " + this.sourceCode.UStoCAN();
}
public string USD_AUD() {
return "Conversion USD to AUD is...";
}
public string USD_JPY() {
return "Conversion USD to JNY is...";
}
public Adapter() {
sourceCode = new ForeignExchange();
}
}
public class Client {
static void Main(string[] args) {
AdapterWrapper afx = new AdapterWrapper();
Console.WriteLine(afx.AdapterWrapper_USD_GBP());
Console.WriteLine(afx.AdapterWrapper_USD_CND());
Console.WriteLine(afx.AdapterWrapper_USD_AUD());
}
}