c#中类初始化方法是否带括号

来源:百度知道 编辑:UC知道 时间:2024/05/22 13:09:35
KinFolk是我自定义的类,其中写了3个属性,没有写初始化方法
那么生产实例的时候,应该用下面2种的那个

区别就是new KinFolk()这里是否应该有这个“()”
我认为是该写,可是msdn上好像没有

nn.Add(new KinFolk() { FName = "Dave", Father = "Ron", Gender = "m" });

nn.Add(new KinFolk { FName = "Karen", Father = "Ron", Gender = "f" });
我发现答案是都行,不知道这是什么样的省略法????????????????????、

完整代码

List<kinfolk> nn=new List<kinfolk>();

public List<kinfolk> CreateData()
{
nn.Add(new kinfolk() {FName="Dave",Father="Ron",Gender="m"});
nn.Add(new kinfolk { FName = "Karen", Father = "Ron", Gender = "f" });

一共要的,这是构造函数,如果你没有写,.net会自动默认有构造函数帮你初始化的!

自己试试看..

我觉得应该有,因为 真正实例化 是new KinFolk()
KinFolk()是构造方法,所以不能少

一定要

在c#中类有两个构造函数,一个显示(就是自己定义的那个),一个隐示,及里面没有任何属性那个,在实例化的时候必须用类名 对象名=new 类名();才可以创建对象成功,然后用对象.属性的方式调用写的属性,另外,写属性最好用封装