Well, because Java 2 introduced replacements for the previous containers. Implementations which were better speed-wise. HashMap instead of Hashtable, ArrayList instead of Vector (, Iterator instead of Enumerator). I haven't used any Java before 1.3, I got the "shouldn't be used" opinion from "Thinking in Java" by Bruce Eckel. So really, I don't know by own experience.
I think the point is that people should master collection classes and interfaces because they make for more flexible programs than are otherwise possible. But there are places where the legacy classes, like Vector and Stack are perfectly fine. They have been upgraded to implement the Collection and List interfaces, so they can play with the Collection classes. As of 1.3, at least, they are not deprecated, and Swing seems to use them.
Time is the best teacher, but unfortunately, it kills all of its students - Robin Williams. tiny ad:
a bit of art, as a gift, the permaculture playing cards