Introduzione alla programmazione e al linguaggio di programmazione Java.
Struttura di un programma. Tipi di dato base in Java. Costanti, variabili,
dichiarazione ed inizializzazione. Espressioni aritmetiche e booleane,
istruzione di assegnamento, primitive di Input/Output.
Strutture di controllo: sequenzializzazione, if-then-else, iterazione e
ciclo (while, for, do-while). Visibilità delle variabili.
Tipi di dato strutturati. Array in Java: definizione, creazione ed
inizializzazione di array. Stringhe in Java e metodi su stringhe.
Array e stringhe come parametri di ingresso/uscita di metodi.
Ricorsione e metodi ricorsivi.
Classi, oggetti, metodi. Variabili istanza e costruttori di una classe.
Creazione di oggetti e loro manipolazione. Copia di riferimenti a oggetti,
null, this. Parametri impliciti ed espliciti di metodi.
Metodi accessori, metodi modificatori, metodi statici.
Variabili statiche. Array di oggetti.
Ereditarietà, superclasse, sottoclasse, gerarchie.
Ereditarietà di variabili istanza e metodi.
Polimorfismo e late binding (selezione posticipata).
Eccezioni in Java e loro gestione.
Gli argomenti trattati durante il corso e che saranno oggetto della prova
d'esame si trovano nei capitoli seguenti del testo di riferimento [1]:
Cap. 1
Cap. 2 (escluse Sez.2.4.4 e Sez.2.5)
Cap. 3 (esclusa Sez.3.6)
Cap. 4 (esclusa Sez.4.4)
Sez.8.3 (fino a par.8.3.2 incluso)
Cap. 6 (escluse Sez.6.11 e 6.12 e le nozioni di protected, inizializzatore
d'istanza, finalize, inizializzatore statico)
Cap. 9 (esclusa Sez.9.2)
Relativamente ai concetti di classe, oggetto ed ereditarietà, sono
utili anche i capitoli seguenti del testo di riferimento [2]:
Cap. 2
Cap. 7 (fino a Sez.7.8 inclusa)
Sez.8.2 e Sez.8.3
Cap. 10 (fino a Sez.10.5 inclusa)
Cap. 13 (escluso Sez.13.5)