Common abstract data types implemented in Java