Sobes.tech
Junior — Middle

Kotlin-də const val və val açar sözləri arasında nə fərqlər var?

sobes.tech Süni İntellekt

AI-dan cavab

Kotlin-də val açar sözü dəyişməz dəyişəni (yalnız oxumaq üçün) ifadə edir, onun dəyəri bir dəfə başlanğıcda təyin oluna bilər, amma dəyər özü işləmə zamanı hesablanmış ola bilər.

const val isə tərtib vaxtında sabitdir, primitiv və ya sətir tipində olmalıdır və tərtib vaxtında məlum olan dəyərlə başlanğıc almalıdır. Bu cür sabitlər, məsələn, annotasiyalarda və ya sabitlər tələb edən parametrlərdə istifadə oluna bilər.

Əsas fərqlər:

  • const val həmişə statik sabitdir, sinif səviyyəsində mövcuddur (yalnız obyektlərdə və ya üst səviyyədə).
  • val adi dəyişməz xüsusiyyətdir, dinamik hesablanabilir.

Nümunə:

const val MAX_COUNT = 10 // tərtib vaxtında sabit
val currentTime = System.currentTimeMillis() // işləmə vaxtında hesablanmış dəyər