cedo che la cos inizi ad essere chiara.
in pratica nel main devo sempre istanziare la classe concreta (quella derivata abstract, magari facendo un downcast.
cosa intendi che come tipo dichiari sempre la superclasse?
bb
cedo che la cos inizi ad essere chiara.
in pratica nel main devo sempre istanziare la classe concreta (quella derivata abstract, magari facendo un downcast.
cosa intendi che come tipo dichiari sempre la superclasse?
bb
Dichiarando il tipo della super classe (o dell'interfaccia)
puoi fare una cosa del genere:codice:public void foo(List<String> list) { ... }
codice:List<String> list1 = new ArrayList<String>(); foo(list1);In questo modo sleghi il tuo codice dall'implementazione specifica di una certa classe: fintanto che il contratto di List (in questo caso) è rispettato tu puoi passargli un List qualsiasi.codice:List<String> list2 = new LinkedList<String>(); foo(list2);
SpringSource Certified Spring Professional | Pivotal Certified Enterprise Integration Specialist
Di questo libro e degli altri (blog personale di recensioni libri) | NO M.P. TECNICI