Junior — Middle
Sinf namunasini yaratishda konstruktorlar va boshlovchilar qanday tartibda bajariladi?
sobes.tech AI
AIdan javob
iOS'da (masalan, Swiftda) sinf yaratishda bajarilish tartibi quyidagicha:
- Avvalo, sinfda e'lon qilingan barcha xususiyatlarning inicializatorlari (agar ular uchun standart qiymatlar bo'lsa) bajariladi.
- Keyin, sinfning o'zining konstruktor (initializator) chaqiriladi.
- Agar sinf meros olsa, avvalo superklassning inicializatorlari chaqiriladi, so'ngra subklassning.
Swiftda misol:
class Parent {
var name: String = "Parent"
init() {
print("Parent init")
}
}
class Child: Parent {
var age: Int = 10
override init() {
super.init() // avvalo superklass inicializatori
print("Child init")
}
}
let c = Child()
// Chiqish:
// Parent init
// Child init
Shu sababli, avvalo xususiyatlar inicializatsiya qilinadi, so'ngra superklassning inicializatori chaqiriladi va oxirida subklassning.