new 修饰符是起什么作用?

2014-11-23 23:23:06 · 作者: · 浏览: 6

new 修饰符与 new 操作符是两个概念


new 修饰符用于声明类或类的成员,表示隐藏了基类中同名的成员。而new 操作符用于实例化一个类型


new 修饰符只能用于继承类,一般用于弥补基类设计的不足


new 修饰符和 override 修饰符不可同时用在一个成员上,因为这两个修饰符在含义上互相排斥


示例:


using System;


using System.Collections.Generic;


using System.Text;


namespace Example09


{


class BaseClass


{


//基类设计者声明了一个PI的公共变量,方便进行运算


public static double PI = 3.1415;


}


class DervieClass : BaseClass


{


//继承类发现该变量的值不能满足运算精度,于是可以通过new修饰符显式隐藏基类中的声明


public new static double PI = 3.1415926;


}


class Program


{


static void Main(string[] args)


{


Console.WriteLine(BaseClass.PI);


Console.WriteLine(DervieClass.PI);


Console.ReadLine();


}


}


}


结果:
3.1415
3.1415926