per ora sto provando così

prima di tutto ho cambiato un po' il giro di nomi delle classi per renderli + comprendisibili

quindi:
ModelloAuto diventa Auto
AutoNuova resta uguale
AutoUsata resta uguale
AutoNuovaDisponibile diventa ModelloAuto

in oltre dichiaro Auto come classe astratta dato che mi serve solo per avere e utilizzare indistintamente le altre 3 in una classe ElencoAuto.

come soluzione non è ancora il top, però non vedo altre vie per ora...