Sorry, I thought this was an inheritance question: it was an ArrayList question all along!
Ok, my problem is more specific than I thought. So I have two families of
This is going to depend on what the access control is on the Arraylist in Zonelist. My assumption from the debugger statement is that it is either unmarked, public, or protected. A subclass can "Hide" a parent class' variable it has access to by defining a variable with the same name. You can also use this keyword to refer to the particular object instance and super keyword to refer to the parent.
Here is a good link on basic access control in Java:
http://java.sun.com/docs/books/tutorial/java/javaOO/accesscontrol.html
This you might also find helpful
http://java.sys-con.com/node/46344