zoukankan      html  css  js  c++  java
  • 设计模式漫谈之模板方法

    最近也是挺烦的,博客园做为程序员的家园,其实不假。虽然现在写出的随笔,看的人少。就当自娱自乐了。烦恼就是矛盾引起的,人很多想法都会被外界环境影响。比如一个思考很久的决定,当事情真发生时,考虑过多,受到外界环境的影响就改变了。

    面试真的靠技巧,虽然你很NB,但是面试官不知道,不给你机会,也是白搭。真正知道你NB的人不多,因为人容易被假象所迷惑。

    想和我发生关系要对我负责,在面向对象中发生关系的有,继承,实现,关联,组合等

    首次都是套路,因为套路是敲门砖。

    对象的成员,对接口属于实现,对抽象类属于重写,对虚方法属于可以重写,用new 属于故意重写。

    继承重在已经拥有。

    人的眼界很重要,比如60岁一直在农村的没见过世面的,就很难理解我们这代人,我敬爱的老父亲最大的苦恼就是我没结婚,他的思想除了想这件事,其他事也不会想。这也怪我,活的自私,毕竟我们不是孤立的个体,不能看破红尘。

    头好疼,无法入睡。操的闲心太多。

    继承已经拥有说明对象中是不少的。

    类就是模板。

    闲话不扯了,今天说模板方法。

    模板就是条条框框已经写好,只用把占位符换成对象的特有属性。

    直接上例子,我来解释。

    //抽象类,已经拥有的

    abstract class AbstractClass
    {

    //需要个性重写的
    public abstract void PrimitiveOperation1();
    public abstract void PrimitiveOperation2();

    public void TemplateMethod()
    {
    PrimitiveOperation1();
    PrimitiveOperation2();
    Console.WriteLine("");
    }
    }

    //在模板上个性化实现

    class ConcreteClassA : AbstractClass
    {
    public override void PrimitiveOperation1()
    {
    Console.WriteLine("具体类A方法1实现");
    }
    public override void PrimitiveOperation2()
    {
    Console.WriteLine("具体类A方法2实现");
    }
    }

    //相当于替换模板的占位符

    class ConcreteClassB : AbstractClass
    {
    public override void PrimitiveOperation1()
    {
    Console.WriteLine("具体类B方法1实现");
    }
    public override void PrimitiveOperation2()
    {
    Console.WriteLine("具体类B方法2实现");
    }
    }

    //只是引用,

    AbstractClass c;

    //应用类型表示的对象

    c = new ConcreteClassA();

    //不强转时,表示引用类型的方法。

    c.TemplateMethod();

    c = new ConcreteClassB();
    c.TemplateMethod();

    总结,模板方法,就是把个性的方法重写,其他的用模板的成员。

    编程全靠思想,继承表示的就是这个对象已经拥有,个性化的成员,可以重写。

    重要的说三遍,程序员全靠编程思想。

    不扯了,头疼,哎

  • 相关阅读:
    洛谷P3258 [JLOI2014]松鼠的新家
    洛谷P3128 [USACO15DEC]最大流Max Flow
    Bzoj1651: [Usaco2006 Feb]Stall Reservations 专用牛棚
    2017-9-26 NOIP模拟赛
    洛谷P1441 砝码称重
    洛谷P1275 魔板
    洛谷P2037 电话号码
    2014-11-3 NOIP模拟赛2
    洛谷P3102 [USACO14FEB]秘密代码Secret Code
    洛谷P3070 [USACO13JAN]岛游记Island Travels
  • 原文地址:https://www.cnblogs.com/wang-charle/p/8994761.html
Copyright © 2011-2022 走看看