Junior
Proqramlaşdırmada instansiya və ilkinləşdirmə nədir?
sobes.tech Süni İntellekt
AI-dan cavab
İnstanse və ya obyektin yaradılması prosesi, yaddaşda sinifin (obyektin) nümunəsini yaratmaq, ona yer ayırmaq və ona unikal identifikator təyin etməkdir.
İnitializasiya isə obyektin yaradılmasından (instanse edilməsindən) sonra onun sahələrinə ilkin dəyərlərin təyin olunmasıdır. Bu adətən sinifin konstruktoru vasitəsilə həyata keçirilir.
Başqa sözlə, instanse obyektin doğulmasıdır, və initializasiya onun başlanğıc dəyərlərini təyin edərək işləməyə hazırlaşmasıdır.
Kotlin nümunəsi:
class Example { // Sinif
var value: Int // Sinif sahəsi
constructor(initialValue: Int) { // Initializasiya üçün konstruktor
// İnstanse etmə, konstruktor çağırılmadan əvvəl baş verir,
// amma burada konstruktor daxilində sahə initial edilir
this.value = initialValue
}
}
fun main() {
// Example sinifindən obyektin instansiyalaşdırılması və initial edilməsi
val myObject = Example(10) // Burada konstruktor çağırılır
println(myObject.value) // Çıxış: 10
}
Bu nümunədə, Example(10) həm instanse etmə (obyekt myObject-in yaradılması), həm də initializasiya (konstruktor vasitəsilə value sahəsinə 10 dəyərinin təyin olunması) həyata keçirir.
Müqayisə:
| Proses | Təsviri | Nə zaman baş verir? |
|---|---|---|
| İnstanse etmə | Obyektin yaddaşda yaradılması | new operatorunun çağırılması ilə (Java-da) və ya initsializasiya zamanı (Kotlin-də) |
| Initializasiya | Obyektin sahələrinə başlanğıc dəyərlərin təyin olunması | Adətən, konstruktor daxilində, instanse etdikdən sonra |