Java Tips

طراحی و توسعه نرم افزار با زبان Java

Java Tips

طراحی و توسعه نرم افزار با زبان Java

Java Tips

اشتراک دانش و تجربه و یادگیری مستمر

وبلاگ مهندس نرم افزار

طبقه بندی موضوعی
بایگانی
نویسندگان

کپسوله سازی(Encapsulation)

جمعه, ۲۰ اسفند ۱۳۹۵، ۰۸:۰۱ ب.ظ

کپسوله سازی(مخفی سازی یا لفافه بندی) به این مفهوم اشاره دارد که باید بعضی از خصوصیات و رفتارهای شیء از دید دیگر اشیاء پنهان بماند. مانند: کارکرد اجزا مختلف یک خودرو(عملکرد سیستم فرمان, عملکرد سیستم برقی, عملکرد سیستم ترمز و ...).

در حقیقت کپسوله سازی باعث می شود اشیاء بدون آنکه از چگونگی کارکرد یکدیگر اطلاع داشته باشند با هم کار کنند.

بنابراین کپسوله سازی تکنیکی است که می توان یک فیلد(همان Instance Variable) کلاس را خصوصی(Private) کرد و دسترسی به آن را از طریق یک متد عمومی(Public) فراهم کرد.

مثال : 

دسترسی به متغیر های کلاس EncapTest به روش زیر (با استفاده از setter و getter) :

و در نهایت خروجی آن :

        کپسوله سازی این مزایا را به ارمغان می آورد  :

      * نگهداری بالای کد ها

      * انعطاف پذیری

      * توسعه پذیری کد ها در آینده

      * Field های کلاس(Instance Variable ها), می توانند  Read-Only و یاWrite-Only  باشند.

      * کلاس می تواند روی داده هایی که در فیلد هایش(Instance variable ها) ذخیره می خواهد بشود کنترل داشته

          باشد.

      * کاربران یک کلاس به هیچ عنوان از نحوه ذخیره سازی داده ها در فیلدهای کلاس(Instance Variable ها) اطلاع

          ندارند.

موافقین ۰ مخالفین ۰ ۹۵/۱۲/۲۰
مهندس نرم افزار

نظرات  (۰)

هیچ نظری هنوز ثبت نشده است

ارسال نظر

نظر دادن تنها برای اعضای بیان ممکن است.
اگر قبلا در بیان ثبت نام کرده اید لطفا ابتدا وارد شوید، در غیر این صورت می توانید ثبت نام کنید.