Свойства инкапсулируют данные, которые принадлежат экземплярам классов. Данные, содержавшиеся в свойствах, могут быть общедоступными, защищены, или частным. Эти данные могут быть фиксированным набором постоянных значений, или они могут зависеть от других значений и вычисленный только, когда запрошено. Вы управляете этими аспектами поведений свойства путем установки атрибутов свойства и путем определения специфичных для свойства методов доступа.
До некоторой степени свойства похожи на поля объекта struct
. Однако хранить данные в свойстве объекта обеспечивает больше гибкости. Свойства могут:
Задайте постоянное значение, которое вы не можете изменить вне определения класса. Смотрите Задают Свойства Класса с Постоянными значениями.
Вычислите его значение на основе текущего значения других данных. Смотрите Свойство методы get.
Выполните функцию, чтобы определить, соответствует ли попытка присвоить значение определенным критериям. См. Методы Набора свойств.
Инициируйте уведомление о событии, когда любая попытка будет предпринята, чтобы получить или установить ее значение. Смотрите События Набора свойств и Запроса.
Управляйте доступом кодом к значениям свойств. Смотрите SetAccess
, и GetAccess
приписывает Атрибуты свойств.
Управляйте, сохранено ли его значение с объектом в MAT-файле. Смотрите Сохраняют и Объекты Загрузки.
Для примера класса, который задает и использует класс, смотрите, Создают Простой Класс.
Существует два типа свойств:
Сохраненные свойства — память Использования и является частью объекта
Зависимые свойства — Никакая выделенная память и получить метод доступа не вычисляют значение, когда запрошено
Может присвоить начальное значение в определении класса
Значение свойства хранится, когда вы сохраняете объект в MAT-файл
Может использовать метод доступа набора, чтобы управлять возможными значениями, но вы не обязаны использовать такие методы.
Вы хотите смочь сохранить значение свойства в MAT-файле
Значение свойства не зависит от других значений свойств
Зависимые свойства сохраняют память, потому что значения свойств, которые зависят от других значений, вычисляются только при необходимости.
Задайте свойства как зависимого когда это необходимо к:
Вычислите значение свойства от других значений (например, можно вычислить область из свойств Width
и Height
).
Обеспечьте значение в различных форматах в зависимости от других значений. Например, размер кнопки в значениях определяется текущей установкой ее свойства Units
.
Обеспечьте стандартный интерфейс, где конкретное свойство или не используется, в зависимости от других значений. Например, различные компьютерные платформы могут иметь различные компоненты на панели инструментов).
Для примеров классов, которые используют зависимые свойства, смотрите, Вычисляют Данные по требованию и Иерархию классов для Разнородных массивов.