EMZETT.
Login

Explizit und implizit

Kurz: Explizit heißt ausdrücklich angegeben, implizit heißt stillschweigend vom System ergänzt. Der Gegensatz taucht bei Typumwandlungen, Konstruktoren, Importen und Schnittstellen auf.

Genauer: Explizit schreibt man hin, was passieren soll, und der Leser sieht es. Implizit nimmt einem die Sprache Arbeit ab, kann aber Überraschungen erzeugen.

Im Detail

  • Typumwandlung: Implizit (automatisch): double d = 5; (int wird zu double). Explizit (Cast): int i = (int) 5.7; (gibt 5, Nachkommastellen gehen verloren).
  • Konstruktor: Hat eine Klasse keinen, legt Java einen impliziten Standard-Konstruktor an.
  • Typ-Inferenz: var x = 5; ist ein impliziter Typ, int x = 5; ein expliziter.
  • JavaScript: Implizite Umwandlung ("5" * 2 ist 10, "5" + 2 ist "52") ist eine Fehlerquelle, daher === und explizite Umwandlung bevorzugen.
  • Regel: Wo Datenverlust droht, verlangt die Sprache meist ein explizites Cast.

Siehe auch: Konstanten, Char (Zeichen)