Junior — Middle
Мо метавонед шарҳ диҳед, ки easy convenience дар забони Swift чист?
sobes.tech AI
Ҷавоб аз AI
Дар Swift концепсияи "fácil convenience" вуҷуд надорад. Мумкин аст, ки мақсад бошад "convenience initializer" — оғозкунандаи қулай.
Инициализаторҳои convenience инициализаторҳои ёрирасон мебошанд, ки сохтани объектро содда мекунанд, бо даъвати дигар designated (асосӣ) инициализаторҳо дар дохили синф. Онҳо бо калимаи калидии convenience эълон мешаванд ва мустақиман наметавонанд ҳамаи хосиятҳои синфро инициализат кунанд, балки танҳо дигар инициализаторҳоро даъват мекунанд.
Масалан:
class Person {
var name: String
var age: Int
// Инициализатори асосӣ
init(name: String, age: Int) {
self.name = name
self.age = age
}
// Инициализатори convenience
convenience init(name: String) {
self.init(name: name, age: 0) // даъвати инициализатори асосӣ
}
}
Бинобар ин, инициализаторҳои convenience кӯмак мекунанд, ки объектҳоро бо маҷмӯи параметрҳои гуногун эҷод кунанд, бо такрор истифода бурдани мантиқи инициализатсия.