C#关于new的用法

1、运算符就是在实例化一个类的时候(运算符的用法)

1 A a=new A();

2、new 约束指定泛型类声明中的任何类型参数都必须有公共无参数构造函数。当泛型类创建类型的新实例时,将此约束应用于类型参数

1 public class Example<T>where T:System.Data.Objects.ObjectContext{}

3、就是在子类中隐藏基类的成员(包括数据成员函数),可以省略,一般还是写上比较好这样让人更容易理解;对基类的成员访问可以用base.来访问

 1 public class Number
 2     {
 3         public static int i = 123;
 4         public void ShowInfo()
 5         {
 6             Console.WriteLine("base class---");
 7         }
 8 
 9         public virtual void ShowNumber()
10         {
11             Console.WriteLine(i.ToString());
12         }
13     }
14 
15     public class IntNumber : Number
16     {
17         new public static int i = 456;
18         public new virtual void ShowInfo() //这儿和public void ShowInfo()是一样的结果
19         {
20             Console.WriteLine("Derived class---");
21         }
22 
23         public override void ShowNumber()
24         {
25             Console.WriteLine("Base number is{0}", Number.i.ToString());
26             Console.WriteLine("New number is{0}", i.ToString());
27         }
28 
29     }
30 
31     class Program
32     {
33         static void Main(string[] args)
34         {
35             //A a = new B();
36             //a.Fun();
37             //Console.ReadLine();
38             Number num = new Number();
39             num.ShowNumber();
40             IntNumber intNum = new IntNumber();
41             intNum.ShowNumber();
42 
43             Number number = new IntNumber();
44             //究竟调用了谁?
45             number.ShowInfo();
46             //究竟调用了谁?
47             number.ShowNumber();
48             Console.ReadLine();
49         }
50     }

 

posted @ 2016-03-16 10:28  温故余学  阅读(370)  评论(0编辑  收藏  举报