Java-Beginner
-
Fragen habe ich im Text kommentiert.
Meine Fragen sind C++ belastet.
Ich bin im Moment auf der Suche nach Unterschieden und Gemeinsamkeiten zw. C++ und Java.class Foo { private static int streetno = 169; //Warum kann ich streetno direkt im classbody initialisieren? private static class Bar { static int func() { return 42; } } public static void main(String[] args) { Bar.func(); // Warum kann ich Bar einfach benutzen?? Ich habe doch gar keine Instanz angelegt, sondern nur die Klasse definiert. } }
-
Hi
weil das Wort staic davor steht und somit eine KlassenElement bzw ein KlassenMethode ist.
gruss Termite
-
Raptor schrieb:
class Foo { private static int streetno = 169; //Warum kann ich streetno direkt im classbody initialisieren? //Warum nicht? private static class Bar { static int func() { return 42; } } public static void main(String[] args) { Bar.func(); // Warum kann ich Bar einfach benutzen?? Ich habe doch gar keine Instanz angelegt, sondern nur die Klasse definiert. //Weil Bar statisch ist. } }
Du bist zu sehr auf C++ versteift. Andere Sprachen andere Mittel, auch wenn das meiste immer gleich ist.
Schau Dir zum Beispiel noch andere oo Sprachen an, dann wirst Du merken das viele den "Java-Weg" gehen.