目录
- 1、运算符(operator)
- 1.1 对象创建表达式
- 1.2 数组创建表达式
- 1.3 委托创建表达式
- 2、修饰符(modifier)
在c#中,new是关键字之一,new关键字主要有以下两个用途:运算符、修饰符。
1、运算符(operator)
new运算符用于创建对象和调用构造函数。
有三种形式的new表达式:
对象创建表达式
用来创建类类型(class type)和值类型(value type)新的实例。数组创建表达式
用来创建数组类型(array type)的新的实例。委托创建表达式
用来创建委托类型(delegate type)的新的实例。
1.1 对象创建表达式
class Program
{static void Main(string[] args){Student stu1 = new Student(15, "Mike");Console.WriteLine(stu1.Age);Console.WriteLine(stu1.Name);}
}class Student
{private int age;public int Age{get { return age; }set { age = value; }}private string name;public string Name{get { return name; }set { name = value; }}public Student(int age, string name){this.age = age;this.name = name;}
}
class Program
{static void Main(string[] args){int a = new int();a = 10;//等价于//int a = 10;Console.WriteLine(a);}
}
1.2 数组创建表达式
class Program
{static void Main(string[] args){int[] array = new int[] { 1, 2, 3, 4 };foreach (var i in array){Console.WriteLine(i);}}
}
1.3 委托创建表达式
delegate int NumberProcess(int a,int b);namespace ConsoleApp1
{class Program{static void Main(string[] args){NumberProcess n = new NumberProcess(Add);Console.WriteLine(n(2, 3));}static int Add(int a,int b){return a + b;}}
}
2、修饰符(modifier)
用作声明修饰符时,new 关键字可以显式隐藏从基类继承的成员。
namespace ConsoleApp1
{class Program{static void Main(string[] args){Teather t = new Teather();Console.WriteLine(t.age);Console.WriteLine(t.name);}}class Person{public int age = 10;public string name = "Mike";}class Teather:Person{new public int age = 15;}
}