zoukankan      html  css  js  c++  java
  • 1.4模板方法模式

    1.概念:定义一个操作中的算法的骨架,而将一些步骤延迟到子类中。模板方法使得子类可以不改变算法的结构即可重新定义该算法的某些特定步骤。


    2.模板方法的特点:
         当代码环境中,子类们的行为方法存在重复,通过抽取封装不变的行为到父类,从而去除子类重复代码,代码因重复利用变得简洁。    
     
        
         模板方法非常简单,其核心是利用了继承机制,AbstractClass是一个抽象模板,包括基本方法和模板方法。其中基本方法是一个已经实现的虚方法,模板方法是具体的方法,他们构成了顶级的逻辑骨架。而逻辑的具体操作延迟到具体的子类ConcreteClass来实现。
     
    代码示例:
    public class TestPaper  
    {
         //即方法骨架,一般是具体方法,可以一个或多个,实现对基本方法的调用。
         protected void  TestQuestion1()
         {
              Console.WriteLine("1+1=?");
              Console.WriteLine("答案:"+Answer1());
         } 
     
         //由子类实现,并在模板方法中被调用
         public virtual string Answer1() { return ""; } 
         public virtual string Answer2() { return ""; } 
         ……
    }
     
    public class StudentATestPaper:TestPaper
    {
         protected override string Answer1() {return "A"; }
         protected override string Answer2() {return "B"; }
    }
     
    客户端:
    StudentATestPaper stuA=new StudentATestPaper();
    stuA.TestQuestion1();
    stuA.TestQuestion2();

     

    学习所得:
         编码中,同样的代码出现过两次,就需要适当的对设计产生怀疑。     

     
     
     
     
  • 相关阅读:
    网站测试中如何做好安全性测试
    Web安全性测试总结
    文件上传验证绕过技术总结
    Burp Suite使用介绍
    Burpsuite教程与技巧之HTTP brute暴力破解
    burpsuite绕过本地javascripte上传文件
    文件上传漏洞演示脚本之js验证
    上传验证绕过
    Burp Suite详细使用教程
    关于post和get传递参数的区别
  • 原文地址:https://www.cnblogs.com/jackyfei/p/3620933.html
Copyright © 2011-2022 走看看