Exempel på fel som java upptäcker är att man har ett array-index utanför arrayens gränser,
försöker använda punktoperatorn på en referens som är null,
försöker göra ett tal av en sträng som inte går att tolka som tal eller försöker
läsa från en fil som inte finns.
Exempel på fel som den egna koden kan upptäcka är att man sätter en cirkel-objekts radie till ett negativt värde eller att man försöker dra en lott ur ett tomt tombola-objekt.
Felen kan antingen beror på programmeraren (ett felaktigt program) eller på användaren (felaktiga indata eller felaktig användning).
Java har en generell mekanism för att hantera fel. Den används automatiskt av fel som javamaskinen upptäcker men den kan också med fördel användas för fel som programkoden kan upptäcka.
Anmärkning: fel är egentligen inte riktigt rätt ord - exceptionell händelse är en bättre benämning. Det behöver inte nödvändigtvis vara ett fel utan någon annan händelse som "stör" det normala flödet i programmet.
throwsthrows i metodhuvudet.
Exempel:
public class C {
public static void main(String[] args) throws NumberFormatException, FileNotFoundException {
...
foo();
...
}
public static void foo() throws FileNotFoundException {
...
}
}
|
NumberFormatException eller FileNotFoundException
inträffar så avbryts programmet. Programmet skulle också kunna fånga felen på samma sätt som
görs i Storage version 5