reynold ha scritto:
Ho notato che
Flow layout fl=new Flowlayout();
LayoutManager fl =new FlowLayout();
Quindi deduco che la classe flowlayout implementa l'interfaccia LayoutManager
Tutti i layout manager AWT/Swing infatti implementano LayoutManager. Molti poi (Flowlayout no ad esempio) implementano LayoutManager2 che è una estensione di LayoutManager.
reynold ha scritto:
Perchè le due istruzioni sopra producono entrambe un risultato corretto?
Quale delle due va usata?
Con i layout manager è improbabile dover sfruttare il polimorfismo, cioè avere variabili/parametri di un super-tipo perché è possibile assegnare più cose e fare invocazioni "polimorfiche". Tipicamente se hai bisogno di un layout manager X, usa pure tranquillamente una variabile/parametro di tipo X.