Customer cust = new Customer();
Run Code Online (Sandbox Code Playgroud)
Customer是一个班级.cust是指定的名称.我不确定是什么Customer()...
这条线做什么?我们为什么需要它?是不是有Customer和Customer()有些重复?
Jon*_*eet 49
它创建一个新实例,Customer()并将新创建的对象的引用分配给变量cust.
如果你想删除重复并且你正在使用C#3.0或更高版本并且它是一个局部变量,你可以使用:
var cust = new Customer();
Run Code Online (Sandbox Code Playgroud)
这具有完全相同的含义 - 它仍然是静态类型的,即变量cust仍然非常类型Customer.
现在,在这种情况下它恰好是重复的,但这两个Customer位完全是分开的.第一个是变量的类型,第二个用于表示要调用的构造函数.他们可能是不同的类型:
Customer cust = new ValuedCustomer();
IClient cust = new Customer();
object cust = new Customer();
Run Code Online (Sandbox Code Playgroud)
这只是因为你创建了一个与重复发生的变量类型完全相同的实例.
dan*_*iel 22
它声明一个客户,然后初始化它.
Customer cust; //declares a new variable of Customer type
cust = new Customer(); //Initializes that variable to a new Customer().
Run Code Online (Sandbox Code Playgroud)
new创建实际对象,cust hold是对它的引用.
空括号表示Customer对象的构造没有传递任何参数,否则括号内将有逗号分隔的参数列表.