Du verwendest einen veralteten Browser. Es ist möglich, dass diese oder andere Websites nicht korrekt angezeigt werden. Du solltest ein Upgrade durchführen oder ein alternativer Browser verwenden.
Hallo benötige für eine klasse ein enum, der alle möglich statuse des objektes speichert. Kannich dieses enum als innere Klasse bzw ist es sinnvoll das so zu tun?
Also bsp so mit innerer Klasse
Code:
public class game
{
public enum field
{
FREE,
WHITE_STONE,
BLACK_STONE,
WHITE_CHECKER,
BLACK_CHECKER
}
private field state;
}
oder so
Code:
public enum field
{
FREE,
WHITE_STONE,
BLACK_STONE,
WHITE_CHECKER,
BLACK_CHECKER
}
public class game
{
private field state;
}
Brauche das enum eigentlich nur in dieser Klasse weil alle anderen legen bloß objekte diesr klasse an oder werten es aus.
Was mich an der 2. variante stört ist das ich für das enum eine eigene datei anlegen muss
ok habs jetzt bloß schnell hingetippt und nicht auf groß und kleinschreibung geachtet das nächste mal pass ich mehr auf.
Habe bei weiterer Überlegung festgestellt das in meinen datenklassen noch weitere enums benötige, eine den status(also gelöscht gestartet beendet) brauch ich in meheren Klassen als parameter typ kann ich die 4 enums auch in eine Klasse packen oder ist das zu unübersichtlich
Ja da hast du wahrscheinlich recht, habe aber eben auch dann enums mit nur 3 Parametern und dann sieht die Klasse so leer aus, aber mal als innere Klasse und mal alsäußere ist besimmt auch nicht so optimal also dann doch für jede eine eigene datei
innere enums sind automatisch statisch, von daher können innere enums nicht mehr als ganz normale enums, die eine eigene Datei spendiert bekommen. Ich würde enums eigentlich immer in eine eigene Datei packen.
innere enums sind automatisch statisch, von daher können innere enums nicht mehr als ganz normale enums, die eine eigene Datei spendiert bekommen. Ich würde enums eigentlich immer in eine eigene Datei packen.
Enums sind IMMER static, egal ob in einer Klasse definiert oder als eigene Datei. Wie man das macht, ist eigentlich ziemlich wurscht. Ich würde es halt davon abhängig machen, ob die Konstanten semantisch zu Objekten einer bestimmten Klasse gehören (dann in dieser Klasse definieren) oder kontextlos sind (dann als eigene Datei).