Junior — Middle
Sınıf təyin edərkən hansı əməliyyatlar və ya xüsusiyyətlər mövcuddur və bunlar strukturda yoxdur?
sobes.tech Süni İntellekt
AI-dan cavab
Swift-də siniflər, strukturlardan fərqli olaraq, aşağıdakı xüsusiyyətlərə malikdir:
- İrsi: siniflər digər siniflərdən irsi ala bilər, bu da ierarxiyalar yaratmağa və metodları üst-üstə qoymağa imkan verir.
- Deinitializers (deinit): siniflər, nümunə silindiyi zaman resursları sərbəst buraxmaq üçün deinitializersə sahib ola bilər.
- İstinad tipi: siniflər istinadla ötürülür, strukturlar isə dəyərlə.
- Xüsusiyyət növləri: siniflər, obyektlərə istinad edən xüsusiyyətlərə sahib ola bilər, bu da yaddaş idarəsini təsir edir.
weakvəunownedistinadların istifadəsi, güclü istinad döngələrini qarşısını almaq üçün.
Deinitializer ilə nümunə:
class Person {
var name: String
init(name: String) {
self.name = name
}
deinit {
print("Person \(name) deinitialization prosesində")
}
}