Modulo I - prof. Alberto Martelli (6 CFU)
Corso di Laurea in Informatica
a.a. 2004/2005
Programma
Richiami su linguaggi ad oggetti e JAVA
Astrazioni, oggetti, classi, metodi,
gestione dinamica della memoria, variabili e metodi di istanza e di
classe, array
Ereditarietà
Polimorfismo, upcasting, overriding,
super, binding dinamico, downcasting
Classi astratte e interfacce
Eccezioni
Come catturare e lanciare le eccezioni,
definire nuove eccezioni, throws
Runtime Type Identification
Come determinare il tipo di un oggetto
durante l'esecuzione, la classe Class,
cenni sulla Riflessione
Input Output
Gerarchia degli stream di lettura e
scrittura, Input Output di testi, dati primitivi e oggetti, copia di
oggetti: mediante lettura e scrittura o mediante il metodo clone.
Strutture dati
Richiami su array. Le classi derivate
da Collection e Map. Iteratori. I generici
in JDK 1.5.
GUI: Graphical User Interface
Componenti delle interfacce grafiche,
Swing, layout dei componenti grafici
Programmazione guidata dagli eventi: Eventi, Listener
Classi annidate
Applet
Architettura Model View Controller
Observer-Observable
Thread
Come si crea un thread (classe Thread e
interfaccia Runnable), ciclo di vita dei thread, come si eseguono i
thread
Sincronizzazione - come realizzare sezioni critiche - semafori - lock
degli oggetti - metodi e blocchi synchronized
Cooperazione fra thread - wait e notify - comunicazione attraverso pipe
Esempi (produttori-consumatori, banca, filosofi, ...)
Strumenti per la concorrenza in JDK 1.5
Lucidi (in PDF) e esempi del Prof. Martelli
Richiami su oggetti e Java
Ereditarietà
Eccezioni
Copia di oggetti
Run Time Type Identification
Input Output
Strutture Dati
Aggiunte in JDK 1.5
Interfacce grafiche
GUI e MVC
Thread
Sincronizzazione di thread
Esempio banca
Aggiunte in JDK 1.5 sulla concorrenza
ESEMPI
|