Способы использования свойств

Что такое свойства

Свойства инкапсулируют данные, которые относятся к образцам классов. Данные, содержащиеся в свойствах, могут быть общедоступными, защищенными или частными. Эти данные могут быть фиксированным набором постоянных значений или могут зависеть от других значений и вычисляться только при запросе. Вы управляете этими аспектами поведения свойств, задавая атрибуты свойств и определяя методы доступа к конкретным свойствам.

Гибкость свойств объекта

В некотором роде свойства похожи на поля struct объект. Однако хранение данных в свойстве объекта обеспечивает большую гибкость. Свойства могут:

Пример класса, который задает и использует класс, см. в разделе Создание простого класса.

Типы свойств

Существует два типа свойств:

  • Сохраненные свойства - Используйте память и являются частью объекта

  • Зависимые свойства - Нет выделенной памяти, и метод get access вычисляет значение при запросе

Функции хранимых свойств

  • Значение свойства сохранено, когда вы сохраняете объект в MAT-файле

  • Можно назначить значение по умолчанию в определении класса

  • Можно ограничить значение свойства определенным классом и размером

  • Можно выполнить функции валидации, чтобы управлять разрешенным значением свойства (по умолчанию и назначенным)

  • Может использовать метод доступа к набору для управления возможными значениями при наборе

Когда использовать сохраненные свойства

  • Вы хотите иметь возможность сохранять значение свойства в MAT-файле

  • Значение свойства не зависит от других значений свойств

Функции зависимых свойств

Зависимые свойства сохраняют память, потому что значения свойств, которые зависят от других значений, вычисляются только при необходимости.

Когда использовать зависимые свойства

Определите свойства как зависимые, когда вы хотите:

  • Вычислите значение свойства из других значений (для примера можно вычислить площадь из Width и Height свойства).

  • Задайте значение в различных форматах в зависимости от других значений. Например, размер кнопки в значениях, определяемых текущей настройкой ее Units свойство.

  • Предоставьте стандартный интерфейс, где конкретное свойство используется или не используется, в зависимости от других значений. Например, различные компьютерные платформы могут иметь различные компоненты на панели инструментов).

Для примеров классов, которые используют зависимые свойства, смотрите Вычисление данных по требованию и Иерархия классов для разнородных массивов.

Похожие темы