📅  最后修改于: 2023-12-03 14:44:15.311000             🧑  作者: Mango
In Kotlin, member properties are the variables that are defined inside a class. These properties can be initialized in the constructor or during declaration. Member properties can be defined as var or val, which stands for mutable and immutable properties respectively.
To declare a member property in Kotlin, you need to follow the following syntax:
class MyClass {
var mutableProperty: Int = 0 //Mutable Property
val immutableProperty: String = "Hello World" //Immutable Property
}
In the above example, mutableProperty
is declared as a mutable property of MyClass
, which can be changed later on. The immutableProperty
, on the other hand, is defined as an immutable property and cannot be changed once it is initialized.
To access member properties of a Kotlin class, you can use the .
operator to access the properties of an object of that class. For example,
val obj = MyClass()
println(obj.mutableProperty) // Output: 0
println(obj.immutableProperty) // Output: Hello World
In the above example, we have created an object of MyClass
and accessed its mutableProperty
and immutableProperty
using the .
operator.
In Kotlin, setter and getter methods for member properties of a class are automatically generated by default. For mutable properties, a setter method is generated that allows changing the value of the property. For immutable properties, only a getter method is generated.
class MyClass {
var mutableProperty: Int = 0 //Mutable Property
set(value) {
field = value
}
val immutableProperty: String = "Hello World" //Immutable Property
get() {
return field
}
}
In the above example, we have defined a custom setter method for the mutableProperty
, where the value is set to the field
of the property. The get()
method for the immutableProperty
simply returns the value of the field
.
Member properties in Kotlin provide an easier way to define and access properties of a class. They can be defined as var or val and can be accessed using the .
operator. Setter and getter methods are automatically generated by Kotlin, but can also be defined manually if required.