শ্রেণি হিসাবে চিহ্নিত করা Sealed
গুরুত্বপূর্ণ ক্লাসগুলিতে যেহেতু নিরাপত্তার সাথে আপস করতে পারে বা পারফরম্যান্সকে প্রভাবিত করতে পারে তা ছড়িয়ে দেওয়া বাধা দেয়।
অনেক সময়, কোনও শ্রেণি সিল করে ফেলার বিষয়টিও বোঝা যায় যখন কেউ স্থির আচরণের সাথে কোনও ইউটিলিটি ক্লাস ডিজাইন করেন, যা আমরা পরিবর্তন করতে চাই না।
উদাহরণস্বরূপ, System
নেমস্পেসে C#
অনেকগুলি ক্লাস সরবরাহ করা হয় যা সিল করা হয়, যেমন String
। যদি সিল না করা হয় তবে এটির কার্যকারিতাটি প্রসারিত করা সম্ভব হবে যা অনাকাঙ্ক্ষিত হতে পারে, কারণ এটি প্রদত্ত কার্যকারিতা সহ একটি মৌলিক প্রকার।
একইভাবে, structures
ইন C#
সর্বদা স্পষ্টভাবে সিল করা হয়। সুতরাং এক অন্য কাঠামো থেকে একটি কাঠামো / শ্রেণি নেওয়া যায় না। এর যুক্তিটি হ'ল structures
কেবলমাত্র একা, পারমাণবিক, ব্যবহারকারী-সংজ্ঞায়িত ডেটা ধরণের মডেল করতে ব্যবহৃত হয় , যা আমরা সংশোধন করতে চাই না।
কখনও কখনও, যখন আপনি শ্রেণিবৃত্তি বানাচ্ছেন, আপনি নিজের ডোমেন মডেল বা ব্যবসায়িক নিয়মের উপর ভিত্তি করে উত্তরাধিকার শৃঙ্খলে একটি নির্দিষ্ট শাখা ছাঁটাই করতে পারেন।
উদাহরণস্বরূপ, এ Manager
এবং PartTimeEmployee
উভয়ই একই Employee
, তবে আপনার সংস্থায় খণ্ডকালীন কর্মচারীদের পরে আপনার কোনও ভূমিকা নেই। এই ক্ষেত্রে, আপনি PartTimeEmployee
আরও শাখা রোধ করতে সিল করতে চাইতে পারেন । অন্যদিকে, যদি আপনার প্রতি ঘন্টা বা সাপ্তাহিক খণ্ডকালীন কর্মচারী থাকে তবে তাদের কাছ থেকে উত্তরাধিকারী হওয়া বুদ্ধিমান হতে পারে PartTimeEmployee
।