Код: Выделить всё
[Serializable()]
public class Foo
{
public Foo()
{ }
private Bar _bar;
public Bar Bar
{
get
{
if (_bar == null)
_bar = new Bar();
return _bar;
}
set { _bar = value; }
}
}
Причина, по которой я это сделал, заключается в том, что у моего класса есть несколько свойств, которые возвращают экземпляр другого класса, который, в свою очередь, также имеет свойства с еще большим количеством классов и так далее. Вызов конструктора верхнего класса впоследствии приведет к вызову всех конструкторов всех этих классов, хотя они не всегда необходимы.
Есть ли какие-либо возражения против этой практики, кроме личных предпочтений?
Подробнее здесь: https://stackoverflow.com/questions/147 ... -in-getter
Мобильная версия