Laurea in Informatica


Corso di Laboratorio di Programmazione
(a.a. 2001-02)


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).


Riferimenti bibliografici

Cay S. Horstmann, Concetti di informatica e fondamenti di JAVA 2, Casa Ed. Apogeo, 2000.
Cap. 1-2-3-5-6 (fino a par.6.4 incluso)
Cap. 7
Cap. 9 (fino a par.9.6 incluso)
Cap.11 (tutto tranne par.11.4 e par.11.6)
Cap.15 (per alcuni esercizi di ordinamento)