In Java gibt es dafür das Konzept der Exceptions (Ausnahmen).
Wenn in einer Methode ein Fehler auftritt, kann ein Fehler-Objekt erzeugt und mit throw zum Aufrufer ‚geworfen‘ werden.
Im Code-Beispiel gibt der Benutzer sein Alter auf der Konsole ein. In der Methode setAlter() wird überprüft, ob der übergebene Wert positiv ist. Ist das nicht der Fall, wird in Zeile 7 ein Fehler-Objekt erzeugt und mit throw dem Aufrufer p.setAlter() übermittelt. Die Zuweisung in Zeile 9 wird im Fehlerfall nicht mehr ausgeführt. Das Programm springt in Zeile 25. Der Fehler wird behandelt, indem eine Fehlermeldung ausgegeben wird.
public class Person { private int alter; public void setAlter(int alter) throws Exception { if (alter < 0) { throw new Exception("Alter darf nicht negativ sein: " + alter); } this.alter = alter; } public int getAlter() { return alter; } public static void main(String[] args) { Person p = new Person(); while (true) { try { System.out.print("Alter eingeben > "); String s = In.readLine(); int a = Integer.parseInt(s); p.setAlter(a); // hier kann Fehler auftreten break; } catch (Exception e) { System.out.println(e.getMessage()); } } System.out.println("Du bist " + p.getAlter() + " Jahre alt."); } }
Weitere Information in Mössenböck, Kap. 19.