如题
我都搞糊涂了!

解决方案 »

  1.   

    //Base.cs
    namespace Hiding
    {
        public class Base
        {
            public virtual void Method1()
            {
                Console.WriteLine("Base.Method1 called");
            }
            public virtual void Method2()
            {
                Console.WriteLine("Base.Method2 called");
            }
        }
    }//Derived.cs
    namespace Hiding
    {
        public class Derived : Base
        {
            public override void Method1()
            {
                Console.WriteLine("Derived.Method1 called");
            }        public new void Method2()
            {
                Console.WriteLine("Derived.Method2 called");
            }
        }
    }//Test.cs
    namespace Hiding
    {
        class Test
        {
            static void Main(string[] args)
            {
        Derived d = new Derived();
        Base b = d;            d.Method1();
        d.Method2();            b.Method1();
        b.Method2();
            }
        }
    }
    看运行结果
      

  2.   

    new 是隐藏,override是复写