我思考了很长时间,关于使用具有get和private set修饰符的属性与返回私有字段的属性之间的优缺点。
以下是一个例子:
public bool Example { get; private set; }
并且
private bool example;
public bool Example { get { return example; } }
使用其中之一有哪些缺点和优点?
我思考了很长时间,关于使用具有get和private set修饰符的属性与返回私有字段的属性之间的优缺点。
以下是一个例子:
public bool Example { get; private set; }
并且
private bool example;
public bool Example { get { return example; } }
少一行代码。除此之外,从功能上讲,它们完全相同。本质上,它是一种语法糖。
我认为即使使用自动get和set的语法糖,也有一些事情取决于设计。
public bool Example { get; set; }
private bool example;
public bool Example
{
get
{
return example;
}
set
{
if(value != example)
{
example = value;
// here you can write some property change notifications or some other logic.
}
}
}
get; private set;
只是语法糖,仅仅是一个编码快捷方式。 - Glenn Ferrie