گرفتن یک مقدار از یک متد در جاوا

فرض کنید یک دوست را برای خرید مواد غذایی فرستاده اید. تقاضایی برای مواد غذایی به صورت فراخوانی متد انجام می دهید. فراخوانی ها را مانند زیر صادر می کنید:

 

goToTheSupermarketAndBuySome(bread);

goToTheSupermarketAndBuySome(bananas);

چیزهایی که در پرانتز هستند پارامتر خوانده می شوند. هربار که متد goToTheSupermarketAndBuySome را فراخوانی می کنید، یک مقدار متفاوت در لیست پارامتر متد قرار می دهید.

حالا وقتی که دوست شما از سوپرمارکت باز گردد چه اتفاقی خواهد افتاد؟ دوست شما خواهد گفت ” این نانی است که تقاضا کرده بودی خریده شود”. در نتیجه انجام خواسته های شما، دوست شما چیزی را به شما باز می گرداند. شما یک فراخوانی متد می سازید و متد اطلاعات را باز می گرداند (یا هنوز بهتر است بگوییم متد تعدادی غذا بر می گرداند)

چیزی که به شما بازگشته است “مقدار بازگشتی” یا return value خوانده می شود و نوع چیزی که در متدی که فراخوانی کرده اید، باز می گردد نوع بازگشت یا return type گفته می شود.

 

یک مثال جاوا

برای اینکه ببینید مقادیر بازگشتی و نوع های بازگشتی در یک برنامه حقیقی جاوا کار می کنند، این کد زیر را چک کنید:

این کد که یک متد را نشان می دهد که مقداری را باز می گرداند.

 

دو مجموعه کد را از اینجا می توانید مشاهده کنید

 

یک اجرا از کد می گیریم:

گرفتن یک مقدار از یک متد در جاوا
گرفتن یک مقدار از یک متد در جاوا

چگونه انواع بازگشتی و مقادیر بازگشتی کار می کنند؟

اگر getInterest  فراخوانی شود این موارد رخ می دهند:

  • مقدار balance 00 است و مقدار rate 2.0 است. پس مقدار balance * (rate / 100.0)  مساوی 190.16  است. 190 دلار و 16 سنت.
  • مقدار به متغیر interest اختصاص داده می شود پس این عبارت :

return interest;

اثر مشابه این عبارات را خواهد داشت:

return 190.16;

  • عبارت return مقدار16 را به کدی که متد را فراخوانده است باز می گرداند. در این نقطه در فرآیند، تمام متد در اولین مجموعه کد فراخوانده می شود. anAccount.getInterest(interestRate) مقدار 190.16 را خواهد گرفت.
  • در نهایت مقدار 190.16 به متغیر yearlyInterest اختصاص داده خواهد شد.

 

چگونه انواع بازگشتی و مقادیر بازگشتی کار می کنند
چگونه انواع بازگشتی و مقادیر بازگشتی کار می کنند

 

اگر یک متد چیزی را باز می گرداند، یک فراخوانی به متد یک عبارت با مقدار است.  آن مقدار می تواند چاپ شود، به متغیر تخصیص داده شود، به چیز دیگری اضافه شود و یا هرچیز دیگر. هر چیزی که می توانید با انواع دیگر داده انجام می دهید می توانید با یک فراخوانی متد نیز انجام دهید.

 

کار با header  (سرآیند) متد

 

وقتی که یک متد را خلق می کنید و یا یک متد را فراخوانی می کنید، می بایستی مراقب باشید که انواع جاوا را همواره استفاده کنید. مطمئن شوید که موارد زیر را چک کرده اید:

در شروع مجموعه کد، سرآیند متد getInterest با کلمه double شروع می شود. وقتی که متد اجرا شد، می بایستی که یک مقدار double به جایی که فراخوانده شده باز گرداند.

دوباره در شروع مجموعه کد، آخرین عبارت در متد getInterest مقدار interest را باز می گرداند. متد هر مقداری که در متغیر interest ذخیره شده باشد را باز می گرداند و متغیر interest نوع double را دارد. تا اینجا خیلی خوب است.

در دومین مجموعه کد، مقدار بازگشت داده شده توسط فراخوانی getInterest به یک متغیر با نام yearlyInterest تخصیص داده می شود. مطمئنا yearlyInterest از نوع double است.

و مسئله حل و فصل می شود. استفاده از انواع داده ای در مدیریت متد getInterest در هر دو مجموعه کد استوار است. هیجان انگیز است.

1 دیدگاه دربارهٔ «گرفتن یک مقدار از یک متد در جاوا»

دیدگاه‌ خود را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *