Поделиться через


Свойства и методы

Обновлен: Ноябрь 2007

Свойства и методы схожи в том, что и те и другие реализуются как процедуры, принимающие аргументы. В общем случае, свойства хранят данные для объекта, а методы являются действиями, которые может выполнять объект. Некоторые характеристики объекта являются его свойствами, например Name, а некоторые — методами, например Move и Show. В других случаях не так очевидно, какие члены класса должны быть свойствами, а какие — методами. Например, метод Item класса коллекции хранит и отображает данные и может быть реализован как индексированное свойство. С другой стороны, разумно реализовать Item как метод.

Синтаксис свойства и метода

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

ThisObject.ThisProperty(Index) = NewValue

При реализации члена класса в качестве метода изменяемое значение должно быть аргументом. В следующем фрагменте кода показано использование равнозначного синтаксиса.

ThisObject.ThisProperty(Index, NewValue)

Сообщения об ошибках

Другим фактором для выбора способа реализации члена класса является тип сообщений, которые будут выдаваться при неправильном использовании класса. При попытке присвоения значения свойству, доступному только для чтения, будет возвращено сообщение об ошибке, отличное от того, которое появится при аналогичном обращении к методу. Правильно реализованный член класса возвращает сообщения об ошибке, которые проще понять.

См. также

Задачи

Практическое руководство. Добавление полей и свойств в класс

Основные понятия

Методы класса

Ссылки

Свойство Item (объект Collection)