Java AOOP2 project