متد overloading در جاوا

ارسال شده توسط: حسین درویشی Comments: 0

متد overloading در جاوا

متد overloading در جاوا برای چندین متد از اسم یکسانی استفاده می شود. در ادامه می خواهیم این نوع متد را مورد بررسی قرار دهیم.

متد overloading چیست؟

برای چندین متد از اسم یکسانی استفاده می شود این متدها باید لیست آرگومان متفاوتی حداقل در یکی از موارد زیر داشته باشد

  • تعداد
  • ترتیب
  • نوع

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

برای اینکه موضوع را بهتر درک کنید به مثال زیر دقت کنید:

public class Test {
void show(int i) {
System.out.print(i);
}
void show(int j,int b) {
System.out.println(j+" "+b);
}
void show(String a) {
System.out.println(a);
}
}

همانطور که در کدهای بالا مشخص هست، متد show در کلاس Test سه بار نوشته شده است منتهی بدلیل اینکه آرگومان متدها با یکدیگر متفاوت هست کامپایلر خطا نمی گیرد و به این کار اصطلاحاً Overloading می گویند اما اگر این متد بصورت یکی از متدهای موجود تعریف شود، کامپایلر خطا خواهد گرفت.

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

Test t=new Test();
t.show(5);
t.show("hossein");
t.show(25, 35);
متد overloading در جاوا

متد Overloading در جاوا با متد Overrinding تفاوتهایی دارد، در پست بعدی به بررسی این متد خواهیم پرداخت.

برای امتیاز به این نوشته کلیک کنید!
[کل: 0 میانگین: 0]

دیدگاهتان را بنویسید

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