我们一般有这种方式来声明复制一个对象:
private MyClass _myClassObj = new MyClass(){name = "xue",id = "212"};
做样做的要求是什么:
1。必须要有个默认无参数的构造函数
2。里面的属性必须是公共的;
我这里说这个的原因不是说就上面这种情况 ,而是在项目中发现了个问题
如果我的构造函数是这样的
public MyClass(string title)
{
init(title,null,true,"test data");
}
public string id{get;set;}
public string title{get;set;}
public string object1{get;set;}
public string Text{get;set;}
public bool IsNeedRepaint{get;set;}
public void init(string name,object object obj,string Text)
{
name = "xuehu";
id= "123";
object1= new object();
IsNeedRepaint = false;
}
如果这个时候我们需要添加一个属性,并且想在{}中申明怎么办,直接添加进去肯定就会报错
public bool IsNewOne{get;set;}
ok,如果现在我们这么做: new MyClass{name = "xue",....,IsNewOne = true}; -------》初始化错误
那么我们应该怎么做?
public void init(string name,object object obj,string Text)
{
name = "xuehu";
id= "123";
object1= new object();
IsNeedRepaint = false;
IsNewOne = false;
}
好了,现在正确了;