[英]Can you instantiate objects via a Property setter?
C#: can you instantiate objects via a Property setter? C#:你可以通过Property setter实例化对象吗?
eg. 例如。
private List<MyObject> myList;
public List<MyObject> MyListProperty { get {return myList;} set {myList = value;} }
THEN: 然后:
MyListProperty = new List<MyObject>();
Yes, that is perfectly valid. 是的,这完全有效。
In the line MyListProperty = new List<MyObject>();
在行MyListProperty = new List<MyObject>();
you do not " instantiate objects via a Property setter ". 你不“ 通过Property setter实例化对象 ”。 First, you instantiate a new list, and then you set MyListProperty
to the list you've created. 首先,您实例化一个新列表,然后将MyListProperty
设置为您创建的列表。 It is equivalent to: 它相当于:
List<MyObject> myObjectList = new List<MyObject>();
MyListProperty = myObjectList;
Next, if you want your code to compile you should specify the type of your property: 接下来,如果您希望编译代码,则应指定属性的类型:
public List<MyObject> MyListProperty
{
get {return myList;}
set {myList = value;}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.