venerdì 26 aprile 2013

Lezione 26/4/2013: Eccezioni (2)

Il blocco try-catch-finally. La politica catch-or-declare: gestire o ignorare le eccezioni. Creare eccezioni personalizzate. Le parole chiave throw e throws. La classe Throwable. La gerarchia delle eccezioni in Java. Le classi Exception e Error. Eccezioni checked e unchecked. Esercizi (da svolgere a casa): SequenzaAGradini, FloppyDisk, Dizionario e Mappa, Catena di volontari.

Presentazione dei progetti. E' stato creato un nuovo gruppo per la discussione dei Sapienza Games (SaGa)!


mercoledì 24 aprile 2013

Lab 25/4/2013: esercizi su interfacce, classi interne; eccezioni; presentazione del progetto

Esercizi su interfacce: Disney vs. Marvel. Esercizi su classi interne: Liste linkate di interi. Eccezioni. Presentazione del progetto.


Lezione 23/4/2013: Interfacce ed eccezioni (1)

Interfacce in Java: dichiarazione, implementazione. Esempio: Iterabile. Differenza tra interfacce e classi astratte. Ereditarietà multipla. Interfacce notevoli. Esercizio: Successione, Animali. Classi interne: classi top-level, classi annidate e interne. Classi annidate statiche. Utilità delle classi interne. Esercizio: Disney vs. Marvel. Eccezioni. Casi tipici nella programmazione Java. Eccezioni notevoli. Perché non restituire un valore d'errore. Vantaggi e svantaggi delle eccezioni. Cosa gestire e cosa non gestire con le eccezioni.



sabato 13 aprile 2013

15/4/2013: prova intermedia!

La prova si terrà lunedì 15 aprile in aula V MAT e avrà inizio alle ore 8.30. Trovatevi in aula tra le 8 e le 8.10 in aula, per l'assegnazione dei posti.


I risultati finali della prova sono disponibili sul gruppo google del corso!

venerdì 12 aprile 2013

Lezione 12/4/2013: final per classi e metodi; introduzione a interfacce ed eccezioni; esercizi

La parola chiave final per classi e metodi; introduzione a interfacce ed eccezioni; esercizi: EssereVivente, Labirinto, interfacce Resettabile e Totalizzabile, esercizio sulla piccola macchina virtuale (dall'esonero del 24/4/2012).


mercoledì 10 aprile 2013

Lab 10/4/2013: esercizi su ereditarietà e polimorfismo


Esercizi su ereditarietà e polimorfismo: ContoCorrente e Operazione, DistributoreDiBevande, espressioni matematiche (Espressione, Costante, Variabile, EspressioneComposta, ecc.), gioco dell'oca (classi GiocoDellOca, Giocatore, Casella, CasellaVuota, CasellaPunti, CasellaSpostamento), reti sociali e codice HTML (dall'esonero 2012). Sbizzarritevi!




martedì 9 aprile 2013

Lezione 9/4/2013: polimorfismo e classe Object

Polimorfismo: definizione, esempi e casistiche. Esempi: la classe Impiegato, ImpiegatoStipendiato e ImpiegatoACottimo. La parola chiave super per accedere a metodi e campi della superclasse. L'operatore instanceof. Downcasting e upcasting: differenze ed effetti sull'interfaccia pubblica. La classe universale Object e i suoi metodi principali. Sovrascrivere i metodi toString, equals e clone. Enumerazioni e costruttori.

venerdì 5 aprile 2013

Lezione 5/4/2013: ereditarietà

Una lezione molto molto importante sull'ereditarietà: abbiamo introdotto il concetto di ereditarietà, di classi e metodi astratti, parole chiave this e super nei costruttori. Overloading e overriding: significato, contratto e differenze. Modificatori di visibilità: public, private, protected e default. Ereditarietà vs. composizione.


giovedì 4 aprile 2013

Lab del 3/4/2013: primi esercizi sull'ereditarietà e strutture dati ricorsive

Esercizi svolti: ListaDiInteri e ListaOrdinataDiInteri; Punto e PuntoColorato; BarraDiEnergia e BarraDiEnergiaConPercentuale; ElementoLista e ListaLinkataDiInteri. Parola chiave super per l'accesso di campi, metodi e costruttori della superclasse.