当我在派生类中写了一个和基类名字相同,签名相同的方法时,没有使用new,编译器警告是否是有意隐藏,有意隐藏请使用new关键字。但是请问,什么情况下,用new关键字和不用new关键字的结果是不一样的?

解决方案 »

  1.   

    任何情况下,用new关键字和不用new关键字的结果都是一样的。派生类中有与基类同名的函数,只要没有override修饰缺省就是隐藏。
      

  2.   

    http://topic.csdn.net/u/20090805/13/254df2c5-2356-438a-a7f5-7f9ce5a9b3b0.html请参考其中:
    25楼的案例
    31楼的总结
      

  3.   

    没自己OVERRIDE,还是会调用基类的方法
      

  4.   

    当你的基类有该方法的时候就是一样的,没new跟有是一样的