non vorrei fare pubblicità a questo o quell'altro testo, comunque come cartaceo mi sono trovato bene con i testi di Herbert Schildt: credo siano arrivati alla 7th edizione (io ho la 6° e già trattava di generics, varargs etc etc, ovvero la ciccia nuova di java).

Ho visto che hai prodotto parecchio codice: il suggerimento a riorganizzare la cosa a fondo e con l'occasione di andare a toccare con mano e tastiera l' OO deriva proprio dall'osservazione del codice, che sembra una trasposizione da pascal procedurale
Non te ne faccio una colpa: se hai programmato per anni in un certo modo e di punto in bianco ti ritrovi a programmare in un altro è pressoché ovvio che cercherai consciamente o inconsciamente il conforto nell'esperienza pregressa.

Stacco, mi finisco il turno e poi ci guardo.