Ausgabe probleme



  • sorry, bin Dummi 😞
    1.System.out.println("damo"+1); //damo1
    zuerst "damo", dann "1"
    System.out.println("damo"+new Dino("MArea"));
    zuerst Dino 😕 😕 😕

    2.println - Methode muss String ausgeben?
    wie kann ich verstehen --- System.out.println(1);

    3. 😃 Dummi hat toString-Methode von Dino gelöscht, dann
    Dino@82ba41 // Fehlermeldung, oder...

    ich kann die println-Mechanismus nicht richtig verstehen, oder?

    ich bitte dich um Geduldigkeit 😞

    danke sehr
    (wer gesagt, Java ist einfach 😡 )

    mfg
    damo



  • damo schrieb:

    sorry, bin Dummi 😞
    1.System.out.println("damo"+1); //damo1
    zuerst "damo", dann "1"
    System.out.println("damo"+new Dino("MArea"));
    zuerst Dino 😕 😕 😕

    Zuerst wird der String zusammengebaut, dann wird er ausgegeben. "println" erwartet genau 1 Argument, dementsprechend ist es gar nicht möglich, dass println erfährt, wie der String zusammengebaut wurde.

    2.println - Methode muss String ausgeben?
    wie kann ich verstehen --- System.out.println(1);

    Es gibt tatsächlich mehrere println-Methoden. Je eine für die Primitiven Datentypen, und dann halt noch eine für Strings und Objekte.

    Das "toString" wird bei deinem Beispiel auch nicht von der "println"-Methode aufgerufen, sondern von dem "+".

    3. 😃 Dummi hat toString-Methode von Dino gelöscht, dann
    Dino@82ba41 // Fehlermeldung, oder...

    Das Standardverhalten der toString-Methode. Klassennamen + Speicheraddresse

    ich kann die println-Mechanismus nicht richtig verstehen, oder?

    Es ist eine ganz normale Methode... da gibts keine versteckten Geheimnisse.



  • Oh,danke schön JBeni.

    Zuerst wird der String zusammengebaut, dann wird er ausgegeben. "println" erwartet genau 1 Argument,

    aha, jetzt habe ich verstanden! 👍

    Das "toString" wird bei deinem Beispiel auch nicht von der "println"-Methode aufgerufen, sondern von dem "+".

    perfect erklärt!!! 👍 👍 👍

    um besser zu verstehen, gibt es Möglichkeit, z.B "int" auszugeben?
    z.B.

    System.out.println(1 * new Dino("MArea"));
    //jetzt nicht toString,sondern 
    int toInt(){return 99;}
    

    sorry, wieder Dummi-Frage 😃 braucht man nicht zu antworten!



  • Die meisten Operationen (*, -, /, &&, ..) funktionieren nur mit einigen primitiven Datentypen. Das + ist dabei die grosse Ausnahme, es kann auch mit Strings arbeiten (und verwandelt alle anderen Argumente dann ebenfalls in Strings).

    Daher: nein, dein Beispiel funktioniert nicht.



  • ist schon ok, vielen vielen Dank JBeni!
    auch danke sehr GPC (sorry, ich habe meine Probleme falsch gesagt, ich wollte nie wieder diese komplizierte Sprache benutzen 😡 )



  • Da bezeichnet Java als eine komplizierte Sprache 😃



  • java ist komplizierter als C++. glaube ich zumindest.



  • damo schrieb:

    java ist komplizierter als C++. glaube ich zumindest.

    Nein. Java ist sehr einfach.



  • Java ist sehr einfach.

    😮 😮 😮

    also, Umfrage, ich bin dagegen!

    mfg
    damo



  • Auf jeden Fall einfacher als C++



  • - alle Methoden virtual
    - keine manuelle Speicherverwaltung
    - keine Operatorüberladung
    - alle Klassen sind implizit von Object abgeleitet, ist mehr standardisiert
    - noch strengere Typüberprüfung als in C++
    - Annotationen geben dem Compiler mehr Informationen so das er mehr Überprüfen kann als in C++
    - keine Mehrfachvererbung
    - kein Präprozessor
    das sind so die Dinge die mir spontan einfallen, die Java wesentlich einfacherer machen als C++.



  • Keine komplizieren Pointer/Referenz überlegungen.


Anmelden zum Antworten