![]() |
Автоматически реализуемые свойстваDate: 2015-10-07; view: 343. В Visual Basic свойства являются членами класса, которые вы используете, чтобы предоставить внешнему миру доступ к состоянию объекта. Типичное объявление свойства выглядит так: Private _Country As String
Property Country As String Get Return _Country End Get Set(ByVal value As String) _Country = value End Set End Property Здесь приходится писать 10 строк кода, чтобы выразить на самом деле крайне простую концепцию. Учитывая, что в типичных объектах обычно содержатся десятки свойств, вы вынуждены включать в определения классов массу стереотипного кода. Чтобы облегчить подобные задачи, в Visual Basic 2010 введены автоматически реализуемые свойства (auto-implemented properties), которые позволяют определять простое свойство всего одной строкой кода: Property Country As String В этом случае компилятор автоматически генерирует аксессоры Getter и Setter, а также поддерживающие поля (backing fields). Имя поддерживающего поля всегда начинается со знака подчеркивания, за которым следует имя свойства (в нашем примере _Country). Это соглашение по именованию гарантирует совместимость на уровне двоичной сериализации на случай, если автоматически реализуемое свойство вдруг придется переделать в обычное. Если имя поддерживающего поля одно и то же, двоичная сериализация будет работать.
Многие отмечают, что новый синтаксис свойств почти идентичен синтаксису открытых полей. И почему бы тогда не использовать открытые поля вместо свойств? Ну, на то есть несколько причин.
|