Java: Rätsel des Tages – assert

Erstellt am 21. Juni 2019 von It_berater

Was ist die Programmausgabe wenn dieses Programm ausgeführt wird?

/**
 * Rätsel des Tages.
 * 
 * @author Thomas Wenzlaff
 *
 */
public class RätselDesTages {

	public static void main(String[] args) {

		System.out.println("Start");

		assert false;

		System.out.println("Ende");

	}
}

Die Lösung ohne VM Parameter:

Start
Ende

Aber mit VM Parameter -enableassertions

Start
Exception in thread "main" java.lang.AssertionError
	at de.wenzlaff.anschlaege.RätselDesTages.main(RätselDesTages.java:15)

Das „Ende“ von System.out wir also nicht erreicht, da ein java.lang.AssertionError geworfen wird. So kann mit dem Parameter alles getestet werden und in PROD wird das alles ohne Parameter ausgeführt und dann ingnoriert. Hier wird in Eclipse der VM Parameter eingegeben.

Und wie immer, „Die Liebe versagt nie!“

Ähnliche Artikel:

  1. Java: Rätsel des Tages
  2. Java: Rätsel des Tages
  3. Java Thread – 6 State oder wie starten wir ein einfaches Java Programm auf dem Raspberry Pi