• Ich finde es einfacher und semantisch sinnvoller, aber von der Funktionsweise ist es natürlich dasselbe.

    Das mit dem Bytecode wusste ich nicht, das war mir nicht klar. ;)

    Naja, man kann ja auch mal sachlicher kommen:
    -unions
    -mehrfache Vererbung
    -inline-Funktionen
    -Freunde
    -direkter Zugriff auf (ur)Großelternklasse möglich, statt super
    -kontrollierbare Speicherverwaltung
    -Zeiger auf Zeiger
    -Präprozessor (so zum #include-prüfen ist das natürlich nicht so schön, ich denke mehr ans Debuggen)
    -Trennung Objekt/Speicheradresse/Referenz und Zugriff auf alle drei
    -Zeiger machen es deutlich, dass man lediglich mit einer Adresse hantiert
    -Call by value
    -Private/Geschützte Vererbung
    -Hardwarezugriff und Kommunikation mit dem System

    Naja,was in Java schöner ist:
    -Wegfall vom ganzen #include und #ifndef/#define
    -Gute compilergenerierte Elementfunktionen
    -Web/Handy-Fähigkeit
    -plattformunabhängige Binaries

    Mir fällt jetzt nicht mehr ein, Wasserleiche darf aber gerne noch Sachen ergänzen - wenn es nicht der garbage-Collector ist, der lässt sich finde ich in C++ gut ersetzen.

    Viele liebe Grüße
    The User

  • Zitat von The User


    Mir fällt jetzt nicht mehr ein, Wasserleiche darf aber gerne noch Sachen ergänzen - wenn es nicht der garbage-Collector ist, der lässt sich finde ich in C++ gut ersetzen.

    Hehe, danke.
    Aber den GC kann man in C++ nicht vollständig ersetzen. Wenn du den auto_ptr meinst, der hat einige Einschränkungen. Zum Beispiel darfst du Objekte die mittels auto_ptr verwaltet werden, in keine STL Container stecken. Und das ist schon eine schwerwiegende Einschränkung!

  • Ja gut, auto_ptr hat immer die Einschränkung, dass nur ein Zeiger auf die Variable zeigen darf und die Zuweisung kein richtiges Kopieren ist.
    Was solls, dann halt eine eigene Klasse machen, für die diese Einschränkung nicht gilt - oder halt eben noch hübsche Feinheiten bietet, die sich in einem Java-Pointer nicht so leicht implementieren ließen - ich glaub daran probier ich mich bald mal. ;)

  • Um nochmal auf die Frage von AlienX zurück zu kommen, natürlich ist es auch möglich Steuerungen auf Javabasis zu schreiben, auch für Wecker, allerdings ist das nicht mehr ganz leicht für dich , weil du noch nicht so viel Erfahrung hast.
    Und zum Thema Plattformunabhängig: damit ist im Prinzip auch nur eine Multifunktionalität von Java gemeint. Bei Windows und Linux gibt es z.B. 2 unterschiedliche Befehle, die beide das selbe tun, während das bei Java nicht nötig ist, denn beide Systeme verstehen die Sprache.

    Ich bin vollzeit JAVA-Entwickler und die Sprache hat trotz seiner Mängel einige stärken, da wir hier aber keine endlose Diskussion zum Thema Java aufmachen wollen, belasse ich es mal bei den von The User genannten Argumenten.

    Eine sehr Interessante Sache könnte für dich auch das Framework JSF sein, oder auch explizit Icefaces für Webanwendungen

    Sämtlicher Code erhebt keinen Anspruch auf syntaktische Korrektheit geschweige denn Ausführbarkeit und ist für die Implementation außerhalb der Beispiele nicht geeignet.
    [Blockierte Grafik: http://www.snippr.de/social/img/logo.png]
    Kein Support für kommerzielle Scripts | Kein kostenloser Support via ICQ

  • Ah, interessant mit dem Iceface.
    Für manche Sachen ist halt Java einfach optimal, nur von der Sprache selbst und für "normale" Programme gefällt mir C++ einfach besser.
    Übrigens habe ich auch nichts dagegen, wenn ihr Java lernt, mach ich ja auch. ;)
    Hier wurden ja dann doch gute Links genannt.
    Was ich für Java noch erwähnen möchte, sind Interfaces.

    Viele liebe Grüße
    The User