استفاده از ثابت ها در جاوا
در فصل 2 آموختید که با استفاده از کلمه ی کلیدی final ثابت های نام دار را ایجاد کنید. گاهی اوقات لازم می شود که یک متغیر عضوی را به یک ثابت تبدیل کنیم. بعنوان مثال ممکن است بخواهید شماره ی یک مدرسه را که برای تمام اشیاء Student یکسان است ذخیره سازی کنید، بنابراین از اصلاحگر static برای آن استفاده می کنید. همچنین برای اینکه این متغیر عضوی غیرقابل تغییر باشد، از کلمه ی کلیدی final استفاده می کنیم. زیرا اگر از کلمه ی کلیدی final برای یک متغیر عضوی استفاده کنیم، این متغیر پس از عمل construction دیگر قابل تغییر نیست.
بعنوان مثال، کلاس قرار گرفته در تصویر 4.32 حاوی یک ثابت به نام SCHOOL_ID است. به دلیل اینکه این ثابت از نوع static است، تمام اشیائی که ایجاد می شوند، این ثابت را به اشتراک می گذارند و چون که از کلمه ی کلیدی final برای این متغیر عضوی استفاده شده است، این متغیر عضوی در زمان اجرای برنامه قابل تغییر نخواهد بود.
مقدار یک متغیر عضوی final که غیر استاتیک باشد می تواند در داخل constructor کلاس تنظیم شود. بعنوان مثال، شما می توانید آن را با استفاده از یک ثابت تنظیم کنید و یا می توانید با استفاده از یک پارامتر که به constructor پاس داده شده است، آن را تنظیم کنید(ست کنید). اما پس از عمل construction دیگر قادر نیستید مقدار یک متغیر عضوی final را تغییر دهید.
نکته
شما می توانید از کلمه ی کلیدی final برای متدها و کلاس ها نیز استفاده کنید. در فصول مربوط به وارثت پیشرفته این موضوع را مورد بررسی قرار خواهیم داد.
متغیرهایی که به صورت static تعریف شده اند همواره از نوع final نیستند. زیرا ممکن است شما بخواهید یک متغیر عضوی ایجاد کنید که تمام اعضای یک کلاس بتوانند به آن دسترسی داشته باشند، اما همچنان بتواند تغییر کند. بنابراین این متغیر عضوی باید از نوع static باشد اما از کلمه ی کلیدی final استفاده نکند. به طور مشابه، متغیرهای final نیز همواره از نوع static نیستند.
- نوشته شده توسط احسان عباسی
- بازدید: 4901