टाइपस्क्रिप्ट में ओओपी में एक्सेसर्स
शुद्ध जावास्क्रिप्ट की तरह ही, टाइपस्क्रिप्ट में भी एक्सेसर्स बनाए जा सकते हैं गुणों के: गेटर्स और सेटर्स।
हालांकि, टाइपस्क्रिप्ट में, एक्सेसर्स के नाम
गुणों के नामों से मेल नहीं खाने चाहिए। आइए
व्यवहार में देखें। आइए निजी गुण name के लिए
एक्सेसर्स बनाएं। यदि
एक्सेसर्स के लिए नाम भी name दिए जाएं,
तो ऐसा कोड त्रुटि देगा:
class User {
private name: string = '';
public set name(name: string) { // त्रुटि देगा
this.name = name;
}
public get name(): string {
return this.name;
}
}
आइए समस्या को ठीक करें, उदाहरण के लिए, निजी गुण का नाम बदलकर:
class User {
private _name: string = '';
public set name(name: string) {
this._name = name;
}
public get name(): string {
return this._name;
}
}
कक्षा User बनाएं, जिसमें
नाम और आयु वाले निजी गुण हों।
इन गुणों के एक्सेसर्स बनाएं।
आयु के सेटर को इस तरह संशोधित करें कि
आयु 0 से 120 तक निर्धारित की जा सके।
यदि कोई अन्य मान निर्दिष्ट किया जाता है, तो अपवाद फेंका जाना चाहिए।