-
Struktur zurückgeben
Hallo,
ich bin ein alter C/C++ler, der gerade am JAVA lernen ist.
Ich habe eine Routine, die eine Struktur zurückgeben soll.
1. Gibt es in JAVA so etwas wie 'struct'?
2. Wenn nicht, muss ich für jede 'class'-Struktur eine eigene Datei anlegen?
JAVA meckert wenn das nicht tue. Ich persönlich finde es jedoch logischer die Rückgabestruktur, besonders wenn sie nur Variablen und keine Routinen enthält, in der Datei der rückgebenden Klasse zu platzieren.
Grüße,
mrsuicide!
-
Moin,
Du kannst z. B. innerhalb einer Klasse eine static class definieren (wenn sie außen sichtbar sein soll, dann public static class), die Du als Transport-"Struktur" benutzen kannst. Nennt sich "Inner class", weil sie innerhalb einer äußeren Klasse definiert wird:
Code:
public class Outer {
public static class Inner {
}
...
public Inner getInner() {
return new Inner();
}
...
}
Jan
-
-
Wo ist denn das Problem bei der Rückgabe der Klasse? Das ist eigentlich eine schlanke Variante. Zurückgegeben wird ja nur ein Verweis auf die Klasse, die schon besteht, da wird nichts neu gebaut. Die vorhandenen Methoden stören also nicht ("Pointer"). Wenn hingegen für die Rückgabe eine methodenlose Klasse gebaut werden muss, so wird ein neues Objekt erzeugt. Das ist aufwendig.
Das erzeugen eigener Rückgabeklassen -- ob intern oder extern -- lohnt sich nur dann, wenn sie serialisiert werden müssen. Dann sollte man nur die Informationen übertragen, die wirklich gebraucht werden.