Slide "Variable declaration"





  • Meine Frage bezieht sich nicht direkt auf die Folie sondern auf einen Absatz aus Kurniawan's Buch (ich wusste nicht wo ich solche allgemeinen Fragen stellen kann).
    Der Absatz lautet:

    "Java 10 added local-variable type inference, a feature that allows programmers to use the
    new keyword var in place of a type and lets the compiler infer (guess) the type. This is to
    say, instead of writing these lines of code
    int numCars = 200;
    char code = 'a';
    you can write these:
    var numCars = 200;
    var code = 'a';"

    Warum benutzt man dann nicht immer 'var' und spart sich das ganze Variablen-Typen-Zeug ? Wäre das Programm dadurch so erheblich langsamer, dass es nicht empfehlenswert ist 'var' zu benutzen oder gibt es einen anderen Grund ?



  • @Schilling

    var hat den Nachteil, das der Code unleserlicher wird, weil nicht auf den ersten Blick erkennbar ist, um was für nen Typen es sich handelt. Außerdem sollt ihr lernen welcher Typ für was geeignet ist, da ist es nicht hilfreich, wenn ihr das umgeht.

    var macht in Streams Sinn, aber das kommt erst deutlich später.



  • @Betzler-0 Alles klar, danke 🙂



  • @Schilling Als Ergänzung zur Antwort von @Betzler-0, da du auch das Thema Geschwindigkeit erwähnt hast: Die Verwendung von var hat keinen Einfluss auf die Performance der Applikation. Diese Deklaration wird nicht erst zur Laufzeit „ausgeführt“, sondern bereits zuvor durch den Java Compiler mit dem entsprechenden Datentyp ersetzt. Der Bytecode ist also identisch – egal, ob in einer Deklaration var oder zum Beispiel int verwendet wird.



  • @Gerstner ah oke gut zu wissen ich dachte man nimmt der JVM "Arbeit" ab, wenn man den Variablen Typ schon angibt, danke 🙂


Log in to reply