Introduzione alla programmazione e al linguaggio di programmazione Java.
Grammatiche libere da contesto e alberi di derivazione.
Tipi di dato primitivi in Java. Costanti, variabili, dichiarazione
e inizializzazione.
Assegnazione, enunciato if, operatori relazionali, espressioni booleane.
Iterazione e ciclo: enunciati while, for e do. Visibilità delle
variabili.
Stringhe in Java, metodi su stringhe, conversione da numeri in stringhe
e viceversa.
Array in Java: definizione e creazione di array, inizializzazione e copia
di array. Array come parametri di ingresso/uscita di metodi.
Classi, oggetti, metodi. Variabili istanza e costruttori di una classe.
Creazione di oggetti e loro manipolazione. Copia di riferimenti a oggetti.
Riferimento a null. Parametri impliciti ed espliciti di metodi.
Metodi accessori, metodi modificatori, metodi statici.
Variabili statiche. Array di oggetti.
Ricorsione e metodi ricorsivi.
Ereditarietà, superclasse, sottoclasse, gerarchie.
Ereditarietà di variabili istanza e metodi.
Polimorfismo e late binding (selezione posticipata).