TypeScript-এ private মডিফায়ার
private মডিফায়ারটি সেই সমস্ত ক্ষেত্রে প্রয়োগ করা হয় যখন ক্লাসের বাইরে থেকে বৈশিষ্ট্য এবং পদ্ধতিগুলিতে অ্যাক্সেস বন্ধ করতে হয়। এমনকি চাইল্ড ক্লাসগুলিতেও এই বৈশিষ্ট্যগুলিতে অ্যাক্সেস করা সম্ভব হবে না।
আসুন একটি উদাহরণ দেখি। User ক্লাসে একটি প্রাইভেট প্রোপার্টি name তৈরি করি:
typescriptclass User {
private name: string;
constructor(name: string) {
this.name = name;
}
}
কনস্ট্রাক্টরে আমাদের প্রোপার্টির মান পাস করে, ক্লাসের একটি অবজেক্ট তৈরি করি:
typescriptlet user: User = new User('john');
এখন ক্লাসের বাইরে এই প্রাইভেট প্রোপার্টি পড়ার চেষ্টা করলে একটি ত্রুটি ঘটবে:
typescriptconsole.log(user.name); // ত্রুটি
ক্লাসের বাইরে এই প্রোপার্টিতে কিছু লিখতে গেলেও একটি ত্রুটি ঘটবে:
typescriptuser.name = 'eric'; // ত্রুটি
তবে ক্লাসের মেথডগুলির ভিতরে আমাদের প্রাইভেট প্রোপার্টির মান পড়া এবং পরিবর্তন করা সম্ভব হবে:
typescriptclass User {
private name: string;
constructor(name: string) {
this.name = name;
}
public getName() {
return this.name; // প্রোপার্টিটি পড়া হচ্ছে
}
public setName(name: string) {
this.name = name; // প্রোপার্টির নতুন মান লিখা হচ্ছে
}
}
User নামে একটি ক্লাস তৈরি করুন যাতে নাম এবং বয়সের প্রাইভেট প্রোপার্টি রয়েছে। কনস্ট্রাক্টরের মাধ্যমে তাদের প্রাথমিক মান সেট হোক।
আপনার User ক্লাসে getName এবং getAge পাবলিক মেথড তৈরি করুন, যা সংশ্লিষ্ট প্রাইভেট প্রোপার্টিগুলির মান পেতে দেয়।
আপনার User ক্লাসে setName এবং setAge পাবলিক মেথড তৈরি করুন, যা সংশ্লিষ্ট প্রাইভেট প্রোপার্টিগুলির মান পরিবর্তন করতে দেয়।