Junior — Middle
Ի՞նչ տարբերություն կա օբյեկտը որպես առանձին օրինակ հայտարարելու և օբյեկտ-համախմբիչ օգտագործելու միջև դասի ներսում։
sobes.tech AI
Պատասխան AI-ից
Swift լեզվում, ընկերական օբյեկտը իրականացվում է static կամ class բանալի բառով դասի ներսում, ինչը թույլ է տալիս ստեղծել հատկություններ և մեթոդներ, որոնք կապված են հենց դասի հետ, ոչ թե նրա օրինակների հետ: Սա նման է "Singleton" ձևանմուշին կամ այլ լեզուների static անդամներին:
-
Անցանկալի օրինակ — դա կոնկրետ օբյեկտ է, որը ստեղծվում է դասի ինիցիալիզացիայով: Յուրաքանչյուր օրինակ ունի իր վիճակը և վարքը:
-
Ընկերական օբյեկտ (ստատիկ օբյեկտ) — դա դասի մաս է, ընդհանուր բոլոր օրինակների համար, և դրա հասանելիության համար անհրաժեշտ չէ ստեղծել օբյեկտ:
Օրինակ:
class MyClass {
static let companion = MyClass()
var value: Int = 0
}
// Օգտագործում
MyClass.companion.value = 10
let instance = MyClass()
instance.value = 5
Այստեղ, companion — ստատիկ ընկերական օբյեկտ է, հասանելի առանց դասի օրինակ ստեղծելու, իսկ instance — առանձին օրինակ է իր սեփական վիճակով։