C#基础-037 里氏转换

纵然是瞬间 提交于 2019-11-27 18:06:43
 class Animal
    {
        private string name;
        private int age;
        private char gender;

        public string Name
        {
            get
            {
                return name;
            }

            set
            {
                name = value;
            }
        }

        public int Age
        {
            get
            {
                return age;
            }

            set
            {
                age = value;
            }
        }

        public char Gender
        {
            get
            {
                return gender;
            }

            set
            {
                gender = value;
            }
        }

        public Animal()
        {

        }
        public Animal(string name, int age, char gender)
        {
            this.Name = name;
            this.Age = age;
            this.Gender = gender;
        }

        public void Eat()
        {
            Console.WriteLine("吃");
        }
    }
 class Dog:Animal
    {
        public Dog(string name, int age, char gender):base(name,age,gender)
        {
        }
        public void Bark()
        {
            Console.WriteLine("吠");
        }
    }
 class Program
    {
        static void Main(string[] args)
        {
            //里氏转换原则  是在父、子类之间进行转化
            Animal animal = new Dog("大黑",5,'母');
            animal.Eat();
            Dog dog = (Dog)animal;
            dog.Eat();
            dog.Bark();
        }
    }
标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!