Junior — Middle
Sınıfın oluşturulan tüm örnekleri için ortak mı olan nesne?
sobes.tech yapay zeka
AI'dan gelen yanıt
Evet, Kotlin'deki companion object (sınıf arkadaş nesnesi), sınıfın tüm örnekleri tarafından paylaşılır. Bu, sınıfa bağlı olan ve belirli bir örneğe değil, sınıfa ait olan bir singleton gibidir.
Companion object, sınıf örneği oluşturmadan çağrılabilen fonksiyonlar ve özellikler tanımlamaya olanak tanır; bu, Java'daki statik metodlar ve alanlara benzer.
Örnek:
class MyClass {
companion object {
val sharedValue = 42
fun printValue() {
println("Paylaşılan değer: $sharedValue")
}
}
}
fun main() {
println(MyClass.sharedValue) // 42
MyClass.printValue() // Paylaşılan değer: 42
}
Burada, sharedValue ve printValue, tüm MyClass örnekleriyle paylaşılır.