Wieso werden in Java Funktionen mit static deklariert/definiert?



  • T0bi schrieb:

    ja...



  • T0bi schrieb:

    Richtig. Wenn Du ein Objekt nicht mehr referenzierst, dann wird der entsprechende Speicher automatisch von der JVM freigegeben. Das ist die "Garbage Collection". Kannst ja mal etwas zu diesem Stichwort im Internet such. Da solltest Du eine ganze Menge finden.

    Wenn Du irgendwelche speziellen Resourcen des Systems belegst, kann es allerdings trotzdem sein, dass Du die manuell wieder freigeben musst, nachdem Du sie nicht mehr brauchst. In dem Zusammenhang gibt es bei Objekten einiger Klassen eine Methode dispose oder so ähnlich. Java wird diese Resourcen zwar auch ansonsten im Normalfall abgeben (Wenn das Objekt vom Garbage Collector eingesammelt wird, wird der sogenannte Finalizer durchlaufen, in dem derartige Resourcen normalerweise freigegeben werden, falls sie noch belegt sind), aber der genaue Zeitpunkt für eine derartige Freigabe ist dann nicht definiert.



  • Jo hab mir gerade nen Tutorial durch gelesen.Da ich ja vorher mehrere Jahre C++ hatte und Java ja von C++ "abstammt" ist das irgendwie jetzt auch kein Problem für mich da ein Programm zu schreiben. Allerdings bin ich noch etwas verwirrt mit der ganzen public schreibweise da und so. Des mit den Modulen ist auch net wirklich ein Problem.

    Was mich nur ein wenig wundert das Java so wenig Bibliotheken bzw Referenzen besitzt?! Ich hab mir jetzt die NetBeans IDE gesaugt um mich mal ein wenig um zu schaun.

    Wie komm ich jetzt zu einer Konsolenausgabe? Oder ganz und gar irgendwas mit 3D. Ist es richtig das Java seine eigene Schittstelle ist und nicht irgenwo auf OpenGL oder DX zugreift?

    Und sicher gibt es da dann doch auch extra andere Referenzen oder?



  • T0bi schrieb:

    Jo hab mir gerade nen Tutorial durch gelesen.Da ich ja vorher mehrere Jahre C++ hatte und Java ja von C++ "abstammt" ist das irgendwie jetzt auch kein Problem für mich da ein Programm zu schreiben. Allerdings bin ich noch etwas verwirrt mit der ganzen public schreibweise da und so. Des mit den Modulen ist auch net wirklich ein Problem.

    Was mich nur ein wenig wundert das Java so wenig Bibliotheken bzw Referenzen besitzt?! Ich hab mir jetzt die NetBeans IDE gesaugt um mich mal ein wenig um zu schaun.

    Wie komm ich jetzt zu einer Konsolenausgabe? Oder ganz und gar irgendwas mit 3D. Ist es richtig das Java seine eigene Schittstelle ist und nicht irgenwo auf OpenGL oder DX zugreift?

    Und sicher gibt es da dann doch auch extra andere Referenzen oder?

    das ist natürlich schön, dass du so ein c++ pro bist, dann wird dir java ja nicht schwerfallen 👍
    wenig bibliotheken? klar std::xxx hat dir natürlich mehr geboten 🙄
    ich sag nur swing, io, math,net, util, sql,rmi,xml,awt ...

    konsolenausgabe mit netbeans? gibt doch genug beispielprojekte...
    "das Java seine eigene Schittstelle ist" was?



  • kA deswegen frag ich ja?!
    Dachte irgendwie immer das Java sowas wie OpenGL ist *g*
    Hab mich halt nie wirklich mit beschäftigt. Doch ich wollte mal langsam mit anfang, weil wenn dann bald des Informatik Studium kommt, wird mit Java geproggt.



  • wo willst du denn studieren?
    denn an den meisten unis wird mit python geproggt 🙄



  • Magdeburg 😃



  • T0bi schrieb:

    Da ich ja vorher mehrere Jahre C++ hatte und Java ja von C++ "abstammt"

    Du hattest mehrere Jahre C++ und weißt nicht, was public bedeutet und was
    static-Methoden sind? 😮

    Ich schätze mal, daß du nochniemals objektorientiert in C++ programmiert hast,
    sondern dich nahezu ausschließlich mit dem imperativen Anteil
    von C++ (also mit C) beschäftigt hast; und das Schlüsselwort virtual
    in C++ wird für dich wahrscheinlich auch ein Buch mit sieben Siegeln sein. 🕶



  • steff3 schrieb:

    wenig bibliotheken? klar std::xxx hat dir natürlich mehr geboten 🙄

    C++ hat mehr strings 😃



  • T0bi schrieb:

    Wie komm ich jetzt zu einer Konsolenausgabe? Oder ganz und gar irgendwas mit 3D. Ist es richtig das Java seine eigene Schittstelle ist und nicht irgenwo auf OpenGL oder DX zugreift?

    Für 3D gibt es eine ganze Reihe von Libraries... "Java3D" (ganzes 3D Framework), "JOGL" (OpenGL Schnittstelle), "jPCT" und andere.

    Und zur Konsole... "java.lang.System.out/err/in" angucken, damit kann man schon arbeiten :p


Anmelden zum Antworten