Свойство (программирование)
- Свойства в объектно-ориентированных языках программирования являются промежуточным видом члена класса между полем и методом.
- Синтаксис для чтения и записи свойств аналогичен полевому, но вызовы методов «getter» и «setter» обычно используются для чтения и записи свойств.
- Расположение вызовов методов «под капотом» позволяет выполнять проверку данных, активное обновление и реализацию «полей, доступных только для чтения».
- Языки программирования, поддерживающие свойства, включают ActionScript 3, C#, D, Delphi/Free Pascal, eC, F#, Kotlin, JavaScript, Objective-C 2.0, Python, Scala, Swift, Lua и Visual Basic.
- Некоторые объектно-ориентированные языки, такие как Java и C++, не поддерживают свойства, требуя от программиста определения пары методов доступа и мутатора.
- Oberon-2 предоставляет альтернативный механизм, использующий флаги видимости объектных переменных.
- В некоторых языках, не имеющих встроенной поддержки свойств, аналогичная конструкция может быть реализована как единый метод, который либо возвращает, либо изменяет базовые данные, в зависимости от контекста его вызова.
Полный текст статьи: