collections - Polymorphism in Java -
why uses polymorphism in java while using collections.
what difference between these initializations.
private list<order> orderlist = new arraylist<order>(); private arraylist<order> orderlist = new arraylist<order>();
in second form, orderlist
can treated arraylist<order>
or inheriting arraylist<order>
.
in first form, orderlist
treated list<order>
, recommended when use functionality defined list<t>
interface. way code more flexible , can refactored (e.g. realize need linkedlist<t>
instead, change initialization , of code not need changed).
also, helpful code refactoring use interfaces instead of actual types, if possible (e.g. use parameters of type list<t>
instead of arraylist<t>
), because allows caller change list type without changing in called function.
Comments
Post a Comment