Only one copy exists of a static field regardless of how many objects that that type exist.
Don't need to create an object in order to access static fields, e.g.
see Math class.
Write a .equals method for the Card class. Need to do this if you want to
compare objects.
Also write a compareTo() method and using the Comparable interface.
Deep copying - don't create a copy using references of the member variables.
Also, when returning a member variable, it can be safer to return a copy and not the
reference.
More on GUI interfaces - scroll bar and text area.