Was sollen wir tun, wenn das Programm nicht darauf vorbereitet ist, Fehler durch das Abfangen von Ausnahmen zu behandeln? Wir können dies mit Behauptungsanweisungen lösen.
Assertionsanweisungen sind während der Debugging-Phase von Code sehr nützlich und werden im Allgemeinen für Fehler verwendet, auf deren Behandlung das Programm durch das Abfangen von Ausnahmen nicht vorbereitet ist.
Beispiel: Wenn ein Fehler auftritt, beispielsweise wenn ein Konto gehandelt wird und der Ausgabenbetrag eine positive Zahl oder der Einnahmenbetrag eine negative Zahl ist, muss das Programm die Ausführung sofort stoppen. Lassen Sie die Assertion-Anweisung während der Debugging-Codephase arbeiten, damit Sie einige schwerwiegende Fehler finden können. Wenn das Programm offiziell ausgeführt wird, können Sie die Assertion-Anweisung bei Bedarf im Quellcode behalten Um in Zukunft erneut debuggt zu werden, können Sie Assertion-Anweisungen erneut aktivieren.
Wir verwenden das Schlüsselwort „assertion“ , um eine Assertion-Anweisung zu deklarieren. Die Assertion-Anweisung hat die folgenden zwei Formate:
AssertbooleanExpression;//Ein Ausdruck, der einen booleschen Typ ergibt. AssertbooleanExpression:messageException;//Ein Ausdruck, der einen Zeichenfolgentyp ergibt
Wenn der Wert wahr ist, wird die Programmausführung ab der Assertionsanweisung fortgesetzt.
Wenn der Wert falsch ist, stoppt die Programmausführung bei der Assertionsanweisung.
Wenn der Wert wahr ist, wird die Programmausführung ab der Assertionsanweisung fortgesetzt.
Wenn der Wert falsch ist, stoppt das Programm die Ausführung der Assertion-Anweisung und gibt den Wert des messageException-Ausdrucks aus, um den Benutzer daran zu erinnern, welches Problem aufgetreten ist.
Zum Beispiel für eine Behauptungsanweisung:
behaupteni>=0;
Wenn der Wert des Ausdrucks i >= 0 wahr ist, setzt das Programm die Ausführung fort; wenn der Wert des Ausdrucks i >= 0 falsch ist, beendet das Programm die Ausführung sofort.
Wenn Sie die Anwendung direkt mit dem Java-Interpreter ausführen, sind Assertion-Anweisungen standardmäßig deaktiviert. Sie können -ea verwenden, um Assertion-Anweisungen beim Debuggen des Programms zu aktivieren, zum Beispiel:
java-eamainclass
Zum Beispiel:
publicclassMain{publicstaticvoidmain(String[]args){int[]score={-120,98,96,94,92};intsum=0;for(intnumber:score){//Verwenden Sie for zum Durchlaufen des Arraysassurancenumber>= 0: Negative Zahlen können keine Noten sein;sum=sum+number;}System.out.println(total score:+sum);}}
Die Laufergebnisse sind wie folgt:
Gesamtpunktzahl: 260