模板模式 c#

本文介绍如何在编程中利用抽象类的概念,通过定义一系列的抽象行为来创建厨艺的模板,具体实现则由子类负责填充。通过实例演示,展示了如何在`Dish`基类中定义通用的烹饪步骤,并在`Meat`子类中具体实现食物的放置,最终调用基类的`Cook`方法完成整个烹饪过程。

  在父类中定义一系列的抽象行为,具体的实现交由子类去实现,类似于ppt的模版,具体实现总是由我们自己去书写ppt。

using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;

namespace ConsoleApplication1
{
    class Program
    {

        public abstract class Dish
        {
            public void Cook()
            {
                StrikeFire();
                PutOil();
                PutSoil();
                PutFood();
                TurnOffFire();
            }

            public void StrikeFire()
            {
                Console.WriteLine("strike fire");
            }

            public void PutOil()
            {
                Console.WriteLine("put oil");
            }

            public void PutSoil()
            {
                Console.WriteLine("put soil");
            }

            /// <summary>
            /// 具体放什么交由子类去完成
            /// </summary>
            public abstract void PutFood();
            
            public void TurnOffFire()
            {
                Console.WriteLine("turn off fire");
            }
        }

        public class Meat : Dish
        {
            public override void PutFood()
            {
                Console.WriteLine("put meat");
            }
        }

        static void Main(string[] args)
        {
            Meat meat = new Meat();
            meat.Cook();

        }
    }
}

 

转载于:https://www.cnblogs.com/zkzk945/p/5111762.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值