new 修飾符是起什么作用?
系列文章導航:
C#基礎概念之P/Invoke,StringBuilder 和 String
9.new 修飾符是起什么作用?
答:
new 修飾符與 new 操作符是兩個概念;
new 修飾符用于聲明類或類的成員,表示隱藏了基類中同名的成員。而new 操作符用于實例化一個類型;
new 修飾符只能用于繼承類,一般用于彌補基類設計的不足;
new 修飾符和 override 修飾符不可同時用在一個成員上,因為這兩個修飾符在含義上互相排斥。
示例:
new的修飾符 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
全站熱搜