کلاسهای مهر و موم شده در سی شارپ، کلاسهایی هستند که بعد از تعریف و کامپایل شدن، دیگر قابلیت ویرایش ندارند. خصوصیات و متدهای آنها برای همیشه مهر و موم میشوند.
وقتی یک کلاس را به صورت مهر و موم شده تعریف میکنیم، کامپایلر دیگر امکان تغییر در تعاریف آن را نخواهد داد. این باعث افزایش امنیت و پایداری کد میشود.
برای تعریف کلاس مهر و موم شده از کلیدواژه sealed استفاده میکنیم. مثلا:
sealed class Person { //... }
کلاسهای مهر و موم شده نمیتوانند ارث ببرند و کلاسهای دیگر از آنها مشتق نمیشوند.
این امکان را نیز دارد تا متدهای خاصی را به صورت مهر و موم شده تعریف کنیم.
- استفاده از کلاس های مهر و موم شده زمانی مناسب است که نمی خواهید امکان تغییر در آن وجود داشته باشد. مانند کلاس های پایه ای کتابخانه.
- متدهای مهر و موم شده دیگر قابل ارث بری نیستند و مشتق شدن از آنها غیر ممکن می شود.
- محتوای کلاس مهر و موم شده در حین اجرا تغییر نمی کند و به صورت ثابت باقی می ماند.
- امنیت برنامه با استفاده از این کلاس ها افزایش پیدا می کند.
- امکان بهینه سازی بیشتری توسط کامپایلر وجود دارد.
- نه تنها خود کلاس بلکه متدهای آن هم میتوانند با استفاده از sealed تعریف شوند تا قابل ارثبری مجدد نباشند.
- در صورتی که یک کلاس از یک کلاس مهر و موم شده ارث ببرد، خودش هم مهر و موم خواهد شد و قابلیت ارثبری دیگری نخواهد داشت.
- در تعامل با سایر بخشهای برنامه، کلاسهای مهر و موم شده امنیت بهتری به ارمغان میآورند.
به طور کلی می توان گفت کلاس های مهر و موم شده برای اجزای پایه و ثابت برنامه مناسب هستند.
ورود به سایت