veröffentlicht am: 22.06.2022 zuletzt aktualisiert am: 19.04.2023
Die Java assert Anweisung wird in der Java-Programmierung zur Durchführung von sog. Assertions (Behauptungen / Annahmen) verwendet. Die Behauptung ist ein Mittel, um einen bestimmten Teil des Codes zu testen. Die Behauptung muss wahr sein, um den Ausführungsprozess zu starten. Ist die Behauptung hingegen falsch, hält das Programm sofort an und es wird ein Fehler gemeldet. Ziel dieses Artikels ist es, einen Einblick in die Verwendung des assert-Schlüsselworts in Java mit den folgenden Lernergebnissen zu geben.
Das Schlüsselwort assert funktioniert genauso wie die Java if-Anweisung. Die if-Anweisung und die assert-Anweisung arbeiten mit der wahren Bedingung. Java assert funktioniert mit der folgenden Syntax:
assert ausdruck-1 : ausdruck(ausgabe);
Der ausdruck-1 sollte eine boolesche (Wahr/Falsch) Bedingung sein. Der ausdruck(ausgabe) enthält die Ausgabe, die auf der Konsole gedruckt wird, wenn ausdruck-1 zu einem Fehler führt.
Assertion hilft bei der Verfolgung von Daten, die möglicherweise nicht zum Testen verwendet wurden. Betrachten wir die folgende einfache if-Anweisung.
if (punktZahl > 90) System.out.println("Die Note ist 1+");
Wir haben eine Schule und bewerten in der Regel auf einer Skala von 0 bis 100 Punkten. Dabei sollen alle Arbeiten der Schüler, welche mehr als 90 Punkte erreicht haben, mit einer 1+ benotet werden. Betrachten wir nun die Bedingung im Detail.
Wenn die Punktzahl größer als 90 ist, dann wird der Compiler „Die Note ist 1+“ ausgeben. Wenn ein Benutzer 250 eingibt, wird ebenfalls „Die Note ist A+„ausgegeben. Gemäß einer if-else Java Anweisung ist dies zwar wahr, aber in der Praxis ist es nicht korrekt. Daher wird das Schlüsselwort assert verwendet, um diese Art von Fehlern zu erkennen.
Das assert-Schlüsselwort wird verwendet, um die Assertion-Operation zu initiieren, jedoch ist die Assertion standardmäßig deaktiviert.
Bevor du assert verwendest, stelle sicher, dass es aktiviert ist.
Um sie in der Eclipse-IDE zu aktivieren, musst du zur Option Run Configurations für eine bestimmte Klasse navigieren.
In den Konfigurationseinstellungen,
Klicke nun auf „Run„, um die Änderungen zu übernehmen.
Der folgende Java-Code verwendet Assert anstelle einer if-else-Anweisung. Betrachten wir die folgende if-else-Anweisung.
public class Main { public static void main(String[] args) { if (punktZahl > 90) { System.out.println("Die Note ist 1+"); } else { System.out.println("Das wäre eine 2"); } } }
Dasselbe Szenario kann mit dem Schlüsselwort assert wie folgt gehandhabt werden.
public class Main { public static void main(String[] args) { Scanner dieErreichtePunktzahl = new Scanner(System.in); // Eingabe des Lehrers System.out.println("Bitte gebe die erreichte Punktzahl ein: "); int meinePunktzahl = dieErreichtePunktzahl.nextInt(); assert(meinePunktzahl > 90 && meinePunktzahl <= 100): "Bitte gib eine gültige Punktzahl an"; if (meinePunktzahl > 90) { System.out.println("Das wäre eine 1+"); } dieErreichtePunktzahl.close(); } }
Im obigen Java-Code,
Wenn die Assert-Bedingung falsch ist, wird ein Assertion-Fehler (auch bekannt als AssertionError) mit dem Hinweis „Bitte gib eine gültige Punktzahl an“ ausgegeben. Außerdem wird das Programm sofort abgebrochen.
Ausgabe auf der Konsole (wenn die Assert-Bedingung falsch ist)
der Wert 390 erfüllt die Assert-Bedingung nicht, daher wird ein Assertion-Fehler mit dem Hinweis „Enter Valid Score“ ausgegeben.
Ausgabe auf der Konsole (wenn die Assert-Bedingung wahr ist)
Die Ausgabe zeigt, dass die Assert-Bedingung für 96 wahr ist, daher wird das Programm normal ausgeführt.
Das assert-Schlüsselwort wird zur Durchführung von einer Assertion in Java verwendet. Die Java-Assertion ist standardmäßig deaktiviert. Dieser informative Beitrag bietet einen Einblick in Java Assert-Anweisungen und dient mehreren Lernzielen. Es werden die Grundlagen der Assert-Anweisung und ihre Bedeutung beschrieben. Außerdem haben wir ein Beispiel vorgestellt, um die Verwendung des assert-Schlüsselworts in Java zu demonstrieren. Wenn du mehr über Java lernen willst, schau dich gerne bei uns um!
😩 Gelangweilt von den Udemy & YouTube-Tutorials?!
Lerne spielerisch Java und komme deiner gutbezahlten (und an der 🌴 liegenden) Traumkarriere einen Schritt weiter.
"Für Leute die gerne Python oder Java lernen wollen ist Codegree klasse. Ist nicht wie bei anderen Konkurrenten auf Videokursen aufgebaut..."
- Lennart Sparbier
100% kostenlos registrieren · keine Kreditkarte notwendig
Im Gegensatz zu der Abendschule oder der alteingesessenen Uni lernst du bei codegree die Sprachen & Pakete, die wirklich im Jobmarkt gesucht werden.
100% kostenlos registrieren · keine Zahlungsdaten notwendig