vs2005+C#+.net 2.0
using
System;
using System.Collections.Generic;
using System.Text;
namespace SFP
... {
public abstract class EFT
...{
public abstract void processs();
}
public class VirtualCheck : EFT
...{
public override void processs()
...{
Console.WriteLine("VirtualCheck is processing!");
}
}
public class MasterCard:EFT
...{
public override void processs()
...{
Console.WriteLine("MasterCard is processing!");
}
}
public class EFTFactory
...{
public EFT createEFT(string type)
...{
switch (type.ToLower())
...{
case "virtualcheck":
return new VirtualCheck();
case "mastercard":
return new MasterCard();
default:
return null;
}
}
}
class Client
...{
static void Main(string[] args)
...{
EFT eft;
EFTFactory eftFactory = new EFTFactory();
eft = eftFactory.createEFT("VirtualCheck");
eft.processs();
eft = eftFactory.createEFT("MasterCard");
eft.processs();
Console.ReadLine();
}
}
}
using System.Collections.Generic;
using System.Text;
namespace SFP
... {
public abstract class EFT
...{
public abstract void processs();
}
public class VirtualCheck : EFT
...{
public override void processs()
...{
Console.WriteLine("VirtualCheck is processing!");
}
}
public class MasterCard:EFT
...{
public override void processs()
...{
Console.WriteLine("MasterCard is processing!");
}
}
public class EFTFactory
...{
public EFT createEFT(string type)
...{
switch (type.ToLower())
...{
case "virtualcheck":
return new VirtualCheck();
case "mastercard":
return new MasterCard();
default:
return null;
}
}
}
class Client
...{
static void Main(string[] args)
...{
EFT eft;
EFTFactory eftFactory = new EFTFactory();
eft = eftFactory.createEFT("VirtualCheck");
eft.processs();
eft = eftFactory.createEFT("MasterCard");
eft.processs();
Console.ReadLine();
}
}
}