I dont want to pass an ArrayList from one class to another as i dont want the client to explicitly type cast the objects present in the ArrayList that is the client should not be bothered to know that what type of object does the ArrayList contains. What are the other options available that is what can i pass instead of ArrayList?
Well Tony's already given links to the nitty gritty details; excellent. There's also a good overview of 1.5 changes here. and note that JDK 1.5 beta is out now, so you can try out generics yourself. (Along with lots of other changes.)