August 2017
Intermediate to advanced
440 pages
10h
English
All the properties in the previous examples were defined as read-write (a setter and a getter are generated). To define read-only properties, we need to use the val keyword, so only a getter will be generated. Let's look at a simple example:
class Person(
var name: String, // Read-write property (generated getter and setter) val age: Int // Read-only property (generated getter)
)
//usage
val person = Person("Eva", 25)
val name = person.name
person.name = "Kate"
val age = person.age
person.age = 28 //error: read-only property
Kotlin does not support write-only properties (properties of which only setter is generated).
|
Keyword |
Read |
Write |
|
var |
Yes |
Yes |
|
val |
Yes |
No |
|
(unsupported) |
No |
Read now
Unlock full access