| Author |
List and ArrayList Problem
|
Ganesh Gowtham
Ranch Hand
Joined: Mar 30, 2005
Posts: 223
|
|
Hi frenz Could u pls explain the below lines 1. List x = ArrayList(); 2. ArrayList xy - new ArrayList(); 1st line approach is best and prefered ,I want to know the idea that ,Y that 1st line is apt and best Thnaks
|
Thanks, Ganesh Gowtham
http://ganesh.gowtham.googlepages.com
|
 |
Ernest Friedman-Hill
author and iconoclast
Marshal
Joined: Jul 08, 2003
Posts: 24045
|
|
Let's say you write a thousand lines of code related that that "xy", including lots of small methods that get passed "xy" as a parameter -- i.e., they accept an ArrayList. Now imagine that one day, you do some profiling and realize that your application spends a lot of time inserting elements into the middle of "xy", and a LinkedList would be more efficient. How many lines of code would you have to change? Answer: maybe a lot. I don't know. You'd have to search. Now, answer that again using "x". The answer is "one". That's good, yes? This is even more important if those methods are in a library called by other people's code. Using an interface instead of a concrete class gives those people the flexibility to use whatever implementation is best for them.
|
[Jess in Action][AskingGoodQuestions]
|
 |
marc weber
Sheriff
Joined: Aug 31, 2004
Posts: 11343
|
|
|
Upcasting to the interface type "List" is preferred because it makes your code more flexible. Specifically, you can treat the object as a List in other code -- for example, passing it to a method that takes a List reference as an argument. This gives you the option of changing the runtime type later to some other List -- for example, if you decide that a LinkedList might be more appropriate -- and this won't break your other code because the object is still a "List."
|
"We're kind of on the level of crossword puzzle writers... And no one ever goes to them and gives them an award." ~Joe Strummer
sscce.org
|
 |
Ganesh Gowtham
Ranch Hand
Joined: Mar 30, 2005
Posts: 223
|
|
HI u said type cating according to our need and for maintainence purpose, we do have any advantage apart from that ?. Pls suggest
|
 |
 |
|
|
subject: List and ArrayList Problem
|
|
|