tgoop.com/mobileproglib/6207
Create:
Last Update:
Last Update:
Свойства класса — это переменные, которые хранят состояние объекта класса. Как и любая переменная, свойство может иметь тип, имя и значение.
В классе можно объявить свойства с помощью ключевого слова var
или val
. Свойства, объявленные с var
, могут быть изменены после их инициализации, а свойства, объявленные с val
, только для чтения.
class Person {
var name: String = ""
val age: Int = 0
}
При создании своего класса мы хотим сами управлять его свойствами, контролируя то, какие данные могут быть предоставлены или перезаписаны. С этой целью создаются get и set методы (геттеры и сеттеры). Цель get-метода — вернуть значение, а set-метода — записать полученное значение в свойство класса.
var name: String = ""
get() = field.toUpperCase()
set(value) {
field = "Name: $value"
}
В данном примере свойство
name
имеет тип String
и начальное значение пустой строки. Геттер возвращает значение свойства, преобразованное к верхнему регистру. Сеттер устанавливает значение свойства с добавлением префикса "Name: "
перед переданным значением. Слово field
используется для обращения к текущему значению свойства.Если get и set методы не были созданы вручную, то для таких свойств Kotlin незаметно сам их генерирует. При этом для свойства, объявленного с
val
, генерируется get-метод, а для свойства, объявленного с var
— и get, и set методы.#буст #JuniorKit #Kotlin