تفاوت دو متد زیر که با Generics در جاوا نوشته شده اند در چیست؟
public void print1(List<? extends Number> param){ //do something } public <T extends Number> void print2(List<T> param) { //do something }
از نظر سینتکس زبانی و کامپایلر جاوا signature این دو متد دقیقا مشابه هم هستند و اگر نام هر دو متد یکسان باشد خطای کامپایل دریافت خواهید کرد اما از نظر مورد استفاده متد print2 که از WildCard استفاده نکرده است این مزیت را دارد که می توانیم از T در بدنه متد یا مقدار بازگشتی نیز استفاده کنیم ولی در متد print1 خیر.
تبلیغات در جواب یاب
اخبار
سیستم امتیازدهی
دسترسی کاربران
داغ ترین سوال ها
پربازدیدترین سوال ها