+1 امتیاز
قبل در برنامه نویسی توسط (5 امتیاز)
ویرایش شده قبل توسط

این مدل نمونه سازی چه مزیتی داره ؟ مثلا چرا میگن بهتره بجای

ArrayList<String> list = new ArrayLis<>();

بصورت زیر استفاده بشه :

List<String> list = new ArrayList<>();

از نظر OOD توجیحی داره ؟

1 پاسخ

0 امتیاز
قبل توسط (1.1هزار امتیاز)

وقتی شما بجای اینکه متغیر خود را از جنس ArrayList تعریف کنید، از جنس کلاس پدر و یا interface ی که کلاستان پیاده سازی کرده است تعریف می کنید دارید از مزیت polymorphism استفاده میکنید. مزیت این کار امکان تغییر پیاده سازی ArrayList در آینده بدون تغییر در متغیر است. برای مثال اگر شما یک پیاده سازی سریعتر از ArrayList پیدا کنید که فرزند List باشد، می توانید براحتی آنها را جابجا کنید. 

سوالات مشابه

0 امتیاز
0 پاسخ 241 بازدید
0 امتیاز
1 پاسخ 576 بازدید
+2 امتیاز
1 پاسخ 558 بازدید
0 امتیاز
1 پاسخ 805 بازدید
+2 امتیاز
2 پاسخ 3.6هزار بازدید
+1 امتیاز
2 پاسخ 3.3هزار بازدید
...