متد static در جاوا (Static Methods)

در این جلسه تیم کدگیت را با آموزش متد static در جاوا همراهی کنید. پیش نیاز های این جلسه شامل موارد زیر هستند:

  1. آشنایی با شی گرایی
  2. آشنایی با متد
  3. آشنایی با Constructor
  4. آشنایی با متغیر static

Static در جاوا

کلمه کلیدی static در جاوا را ابتدای اولین برنامه ای که مینویسیم آن را میبینیم (منظور متد main است که static است) و شاید برای ما سوال شود این کلمه به چه معناست!! کلمه کلیدی static در جاوا اساسا برای مدیریت حافظه استفاده میشود. ما میتوانیم کلمه کلیدی Static را قبل از متغیرها، متدها و کلاسهای تو در تو قرار دهیم. نکته اساسی که در این کلمه کلیدی وجود دارد این است که static وابسته به کلاس است و نه شی!!! در این جلسه ما متد static در جاوا را توضیح میدهیم.

متد static در جاوا

وقتی ما قبل از خروجی یک متد کلمه کلیدی static بنویسیم آن متد را متد static در جاوا میگوییم. این متد شامل ویژگیهای زیر است:

  1. متد static وابسته به کلاس است نه وابسته به شی.
  2. متد static بدون ساخته شدن شی میتوان آن را صدا زد.
  3. متد static فقط به متغیر های (فیلدهای) static دسترسی دارد و مقدار آنها را میتواند تغییر دهد.

مثال اول

با یک مثال ساده مطالب بالا را شرح میدهیم. فرض کنید یک کلاس داریم برای دانشجویان. این کلاس شامل سه فیلد Student id و name و college است. فیلد college یک فیلد static است. ما درون این کلاس متدی به نام change قرار دادیم که مقدار متغیر college را تغیر دهد. کد متد static در جاوا به صورت زیر است:

همانطور که میبینید قبل از اینکه ما از کلاس دانشجویان شی بسازیم متد change را صدا زدیم. این متد متغیر college را تغییر میدهد. خروجی کد متد static در جاوا به صورت زیر است:

مثال دوم

مثال دوم متد static در جاوا بسیار ساده است. ما یک متد static داریم به نام cube. این متد یک عدد ورودی میگیرد و مکعب آن عدد را برمیگرداند. ما این متد را static نوشتیم.

همانطور که میبینید ما بدون ساختن شی از کلاس Calculate یک متد آن که static است را صدا زدیم. خروجی کد بالا عدد 125 است.

محدودیت های متد Static در جاوا

همانطور که دیدید متد static کاربرد فراوانی دارد ولی در کنار کاربرد های خاص خود، دو محدودیت نیز دارد. محدودیت اول این است که این نوع متدها نمیتوانند به طور مستقیم متغیرها یا متدهایی که static نیستند را استفاده کنند.محدودیت دوم هم بدین صورت است که متد static در جاوا نمیتواند در خود از کلمه کلیدی this و super استفاده کند.

پسورد: www.codegate.ir

 

دسته : java, آموزش قدم به قدم جاوا, جاوا, شی گرایی در جاوا

دیدگاه بگذارید

نظر شما چیست؟

مطلع کردن شما از
avatar

wpDiscuz