[C#]关于接口Interface的场景假设-代码模拟-引喻类比-知识快照等-B

前言

接口和类的作用很相似,但又有所不同。在面向对象程序设计高级语言中,类的概念比接口的概念出现的早。如何快速地分辨他们的语义差别,如何快速地建立起自己的抽象模型,如何快速地应用到自己的代码实践当中,是初入程序设计行业的人员急需关注的问题。同时,在此声明,本栏目中接口系列的文字论断皆为一家之言。B篇属于接口系列第2篇,欢迎抛转,共同进步。

场景假设

宠物(Pet),对于人类来讲,容易驯化,不轻易伤害人类。经过代代遗传,其深层的基因(Gene)已经具有“可爱”的一面。猫具有爬树和抓老鼠的特殊技能。猫经过人类的训练,部分已具有站立行走的能力。

代码模拟

using System;

namespace InterfaceDemo
{   
    interface IClimbTree
    {
        void ClimbTree();
    }
   
    interface ICatchMouse
    {
        void CatchMouse();
    }
   
    interface IStandWalk
    {
        void StandWalk();
    }
   
    public class Pet
    {
        protected string Gene = "Pet";
        public void ShowMe()
        {
            Console.WriteLine("我可爱");
        }
    }
    
    public class Cat : Pet, IClimbTree, ICatchMouse
    {
        public void ClimbTree()
        {
            Console.WriteLine("我会爬树");
        }
        public void CatchMouse()
        {
            Co

你可能感兴趣的:(代码哲学,c#)