模板方法模式
步骤:
一、在父类中创建模板方法,以完成一致的操作
二、在子类中实现其个别不同的操作
代码:
/// <summary>
/// 数据验证父类
/// </summary>
public abstract class Validation
{
public void Valid(string value) {
Console.WriteLine("\r\n验证结果:{0}\r\n", this.IsVald(value));
}
protected virtual bool IsVald(string value) {
return true;
}
}
/// <summary>
/// 子类:数值验证
/// </summary>
public class ValidByInt:Validation
{
protected override bool IsVald(string value)
{
try
{
int number = int.Parse(value); return true;
}
catch
{
return false;
}
}
}
/// <summary>
/// 子类:性别验证
/// </summary>
public class ValidBySex:Validation
{
protected override bool IsVald(string value)
{
if (value == "男" || value == "女") { return true; }
return false;
}
}
// 客户端调用
Validation v1 = new ValidByInt();
v1.Valid("男");
v1 = new ValidBySex();
v1.Valid("男");
Console.ReadKey();