Junior — Middle
Kilitli sınıf nedir ve onun temel avantajları ve özellikleri nelerdir?
sobes.tech yapay zeka
AI'dan gelen yanıt
Kilitli sınıf (sealed class), Kotlin'de (genellikle Android geliştirmede kullanılan) özel bir sınıf türüdür ve kalıtım hiyerarşisini sınırlar. Ana fikir, kilitli sınıfın tüm alt sınıflarının aynı dosyada ilan edilmesi gerektiğidir.
Avantajlar ve özellikler:
- Derleyicinin tüm alt sınıfları bilmesini sağlar, bu da
whenifadeleriyle çalışırken güvenliği ve kullanışlılığı artırır — derleyici tüm durumların işlendiğini kontrol eder. - Sınırlı hiyerarşilerin, örneğin durumlar veya olaylar gibi, modellenmesini kolaylaştırır.
- Dosya dışında yeni alt sınıfların oluşturulmasını engeller, bu da mimari üzerinde kontrol sağlar.
Örnek:
sealed class Result {
data class Success(val data: String) : Result()
data class Error(val error: Throwable) : Result()
}
fun handleResult(result: Result) {
when(result) {
is Result.Success -> println("Veri: ${result.data}")
is Result.Error -> println("Hata: ${result.error.message}")
}
}