请教实例化对象的转化是如何进行的?

来源:互联网 发布:淘宝商城购物 编辑:程序博客网 时间:2024/05/05 03:53

    public class Animal
    {
        protected string name;

        public Animal(string newName)
        {
            name = newName;
        }
        public void Feed()
        {
            Console.WriteLine("{0} has been fed", name);
        }
    }

    public class Chicken:Animal
    {
        public void Layegg()
        {
            Console.WriteLine("{0} has laid an egg",name);
        }
        public Chicken(string newName): base(newName)
        {
        }
    }

        static  void Main(string[] args)
        {
           Chicken a = new Chicken("123");
           ((Animal)a).Feed();
         }
请教一下:
为什么子类对象可以转化为基类对象,基类对象却不可转化为子类对象?
其转化过程究竟是如何进行的?