Programmazione II
Prof: Cattuto
:Computer_Science:
Generici Vincolati
Classe Tree di generici T vincolati a Comparable<T>
Errori e Eccezioni –> Throwable
Error
eccezioni non rimediabili
- scelta del programmatore
Exception ~ se estesa: controllata
- Condizioni di errore che pensiamo di poter gestire
Checked
- Eccezioni controllate
- origine esterna
- va previsto un rimedio
- Sono cosi' comuni che il compilatore pretende che il programmatore gestisca l’eccezione
- o avverta con la parola chiave
throws
- o avverta con la parola chiave
-
IOException
- FileNotFoundException
-
EOFException
- End Of File
Unchecked
- Eccezioni non controllate
- origine interna
- possiomo prevedere un rimedio oppure no
-
RuntimeException
- NullPointerException
-
ArithmeticException
- / 0
Uso
public class TestError{
public static void m1(){
throw new Error("mio errore");
}
// Esempio eccezione controllata, devo usare throws per compilare
public static void m2() throws IOException {
throw new IOException("IO Exception");
}
// Esempio di eccezione non controllata, il compilatore non controlla
public static void m3(){
throw new RuntimeException("runtime");
}
public static void main(String[] args){
try{
m1();
m2();
m3();
} catch(Throwable e) { // Upcast alla classe Throwable
System.out.println("Captured: " + e);
}
}
}
Iterable su Intervalli
iterazione su una lista collegata di interi
da un nodo first
a un altro last
*
Alberi Binari di Ricerca Binaria
- Estensione delle classi per permettere vari tipologie di visite
- preOrder()
- inOrder()
- postOrder()
- livello(int n)
- livello()
- leavesAt(int n)