码迷,mamicode.com
首页 > 其他好文 > 详细

隐藏父类的方法

时间:2014-11-13 16:24:32      阅读:182      评论:0      收藏:0      [点我收藏+]

标签:style   blog   color   ar   sp   div   on   log   bs   

正常情况下,父类virtual的方法,子类override

 class Animal
    {
        public virtual void EatFood()
        {
            Console.WriteLine("动物在吃东西");
        }
    }
    class Cat : Animal
    {
        public  override void EatFood()
        {
            Console.WriteLine("猫在吃鱼");
        }
    }

    class Program
    {
        static void Main(string[] args)
        {
            Animal animal = new Cat();
            animal.EatFood();//输出的是子类的方法
            Console.Read();
        }
    }

 

另外一种情况,父类的方法不是virtual的,但是子类中有同名的方法

但是子类需要隐藏掉父类的方法

class Animal
    {
        public void EatFood()
        {
            Console.WriteLine("动物在吃东西");
        }
    }
    class Cat : Animal
    {
        new public void EatFood()//通道new关键字,隐藏掉父类的方法
        {
            Console.WriteLine("猫在吃鱼");
        }
    }

    class Program
    {
        static void Main(string[] args)
        {
            Animal animal = new Cat();
            animal.EatFood();//输出的是父类的方法
            Console.Read();
        }
    }

 

隐藏父类的方法

标签:style   blog   color   ar   sp   div   on   log   bs   

原文地址:http://www.cnblogs.com/chucklu/p/4094866.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!