Datentypen enum static Chaos (blutiger anfänger)

tschawa

Neues Mitglied
hallo,
ich möchte als allererste kleine progr.übung ein kleines programm zur auszählung von go-spielbrett programmieren. noch stehe ich gaaanz am anfang. ich dachte mir, den Feldzustand könnte ich doch ganz gut als enum definieren (leer, schwarz, weiss), aber der enum wird ja als static übersetzt und dadurch bin ich in eine sackgasse geraten... ich möchte für jedes spielfeld (n x n) eine Instanz "Feld" erzeugen und dort in einer Klassenvariablen den Feldzustand mit Datentyp enum speichern. leider geht das nur als static, was bedeutet, dass ich genau einen zustand für alle n x n felder habe :(. ich möchte eigentlich den aufwand für eine kompliziertere enum-klasse nicht treiben - warum auch? ich stelle mal den code hier rein und wenn jemand lust hat mir n'en tipp zu geben, würde ich mich freuen. also hier der code: über wo static steht gehört ein grosses ? dazu!
es sind 3 klassen: feld, brett, rungo
ist so übersetzbar, aber taugt natürlich nichts ... grrrr.

feld.java:
Java:
package go;
public class feld {
 
   protected enum steintyp {LEER, SCHWARZ, WEISS}

   private int zeile;
   private int spalte;
   private static steintyp stein_auf_feld; // das gibt's ja dann nur einmal. falsch!

   protected feld(int inzeile, int inspalte) {
       this.zeile=inzeile;
       this.spalte=inspalte;
       this.stein_auf_feld=steintyp.LEER;
   }

   protected static steintyp getSteintyp() {
       //return steintyp.valueOf(steintyp.class, "SCHWARZ");
       return stein_auf_feld;
   }
    
   protected static void setSteintyp(steintyp welcher_steintyp) {
       stein_auf_feld = welcher_steintyp;
   }
}

brett.java:
Java:
package go;

import go.feld.steintyp;

public class brett {

   protected brett() {
       feld f = new feld(1,1);
       feld.setSteintyp(steintyp.WEISS);
       steintyp styp = feld.getSteintyp();
       System.out.println(styp);
   }
}

rungo.java:
package go;
public class rungo {
   public static void main(String[] args) {
       brett b = new brett();
   }
}

p.s.: wie kann man hier eigentlich den code als fixed size formatieren?
 
Zuletzt bearbeitet von einem Moderator:

mrBrown

Super-Moderator
Mitarbeiter
ich möchte als allererste kleine progr.übung ein kleines programm zur auszählung von go-spielbrett programmieren. noch stehe ich gaaanz am anfang. ich dachte mir, den Feldzustand könnte ich doch ganz gut als enum definieren (leer, schwarz, weiss), aber der enum wird ja als static übersetzt und dadurch bin ich in eine sackgasse geraten... ich möchte für jedes spielfeld (n x n) eine Instanz "Feld" erzeugen und dort in einer Klassenvariablen den Feldzustand mit Datentyp enum speichern. leider geht das nur als static, was bedeutet, dass ich genau einen zustand für alle n x n felder habe :(. ich möchte eigentlich den aufwand für eine kompliziertere enum-klasse nicht treiben - warum auch? ich stelle mal den code hier rein und wenn jemand lust hat mir n'en tipp zu geben, würde ich mich freuen. also hier der code: über wo static steht gehört ein grosses ? dazu!
Irgendwas hast du da missverstanden - die Variabel muss keineswegs static sein, nimm einfach das static weg und es funktioniert wunderbar ;)
 

tschawa

Neues Mitglied
danke danke! na-ja, auf dem schraubenschlüssel war ich ja gestern schon, aber dieser wiki-editor verrät seine formatierungscodes anscheinend nicht gerade so jedem...? eine erklärung zu den codes habe ich nicht gefunden. die wäre eigentlich hier als link hilfreich. (hmm, hinter dem button einfügen ... steckt es also ...)
mein entscheidender fehler war, dass ich die feld-Methoden in der Klasse brett mit dem Klassennamen aufgerufen habe. Damit wurden statische Methoden und dann auch eine statische Variable gefordert. Auch ein Irrtum den ich wahrscheinlich durch die kleinschreibung der klasse feld provoziert habe. bin einen schritt weiter danke.
 
Zuletzt bearbeitet:

Joose

Top Contributor
danke danke! na-ja, auf dem schraubenschlüssel war ich ja gestern schon, aber dieser wiki-editor verrät seine formatierungscodes anscheinend nicht gerade so jedem...? eine erklärung zu den codes habe ich nicht gefunden. die wäre eigentlich hier als link hilfreich. (hmm, hinter dem button einfügen ... steckt es also ...)
Etwas versteckt ist der Hilfe Link schon :confused: .. https://www.java-forum.org/help/bb-codes
(zu finden ganz unten neben dem Impressum und Kontakt Link)
 

Neumi5694

Top Contributor
Anm: "protected" funktioniert in Java etwas anders als du es anscheinend gewohnt bist. "protected" bedeute in Java NICHT "nur im Package sichtbar". Wenn man das erreichen will, verwendet man einfach gar kein Keyword. Schlage es mal nach für genauere Infos

Du machst es dir da selbst etwas zu kompliziert. Das enum mag ja static sein, aber die Variablen, welche das Enum speichern, müssen das nicht sein.

Entferne einfach die static Keywords vor "stein_auf_feld" und dessen Zugriffsmethoden. Die Variable ist ja eine Eigenschaft der Instanz und nicht der Klasse.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
A Was ist performanter für Konstanten, enum oder static variablen Java Basics - Anfänger-Themen 5
F enum oder static final boolean? Java Basics - Anfänger-Themen 18
P Enum oder normale Klasse? Java Basics - Anfänger-Themen 10
volcanos enum und switch (neu): falschen Wert mit IllegalArgumentException oder mit EnumConstantNotPresentException abfangen ? Java Basics - Anfänger-Themen 51
X Enum Abfrage ohne if, for, while oder switch Java Basics - Anfänger-Themen 21
U Warum kann ich die Methode in der ENUM Klasse nicht aufrufen? Und warum geht die Switch nicht? Java Basics - Anfänger-Themen 8
D Frage bzgl. Enum-Handhabung Java Basics - Anfänger-Themen 16
S Java Enum Java Basics - Anfänger-Themen 2
I Validation, ob String ein Wert aus einem Enum enthält Java Basics - Anfänger-Themen 3
V Enum Java Basics - Anfänger-Themen 1
C Farben als Enum Java Basics - Anfänger-Themen 3
N enum Attribut von Objekten einer Hashmap ausgeben Java Basics - Anfänger-Themen 6
I JAXB und Enum Java Basics - Anfänger-Themen 7
M Enum-Variable HashMap zuweisen Java Basics - Anfänger-Themen 5
B Enum innerhalb einer Klasse / anderes Konzept Java Basics - Anfänger-Themen 8
N Enum Typen, was passiert intern mit ihnen? Java Basics - Anfänger-Themen 2
A enum Java Basics - Anfänger-Themen 6
O Enum Array Rekursiv abarbeiten Java Basics - Anfänger-Themen 44
B ENUM to List<String> konvertieren Java Basics - Anfänger-Themen 2
N Java Enum converter Methode Java Basics - Anfänger-Themen 5
F Enum von Ländern Java Basics - Anfänger-Themen 8
J Klassen Enum als Informationsträger Java Basics - Anfänger-Themen 10
R Enum ist das gleiche wie? Java Basics - Anfänger-Themen 15
P Klassen Richtige Anwendung einer Enum-Klasse Java Basics - Anfänger-Themen 11
E Datentypen Problem beim Speichern von enum. Java Basics - Anfänger-Themen 10
J Compiler-Fehler class interface or enum expected Java Basics - Anfänger-Themen 1
E Objektvergleich Enum Java Basics - Anfänger-Themen 7
kilopack15 Euromünzen in enum als Liste ausgeben Java Basics - Anfänger-Themen 11
N Enum als generischer Typ Java Basics - Anfänger-Themen 4
H Datentypen Fehler bei Verwendung von enum Java Basics - Anfänger-Themen 9
lBlKha0s Fehlermeldung : class interface or enum expected Java Basics - Anfänger-Themen 9
T error: class, interface, or enum expected Java Basics - Anfänger-Themen 5
S Menüauswahl per Enum Java Basics - Anfänger-Themen 12
F Enum via String definieren Java Basics - Anfänger-Themen 2
L Compiler-Fehler error: class, interface or enum expected Java Basics - Anfänger-Themen 2
M java.lang.Enum.valueOf(Unknown Source) Java Basics - Anfänger-Themen 2
M Enum-Variabel-Abfrage funktioniert nicht? Java Basics - Anfänger-Themen 2
P Fallunterscheidung mit Überprüfung (enum) Java Basics - Anfänger-Themen 11
H enum Type Java Basics - Anfänger-Themen 6
F Operatoren Enum aus Textdabei laden Java Basics - Anfänger-Themen 3
P enum: cannot be resolved to a type Java Basics - Anfänger-Themen 2
kaoZ Variablen Konstantensammlung vs. Enum Java Basics - Anfänger-Themen 9
H Enum außerhalb einer Klasse? Java Basics - Anfänger-Themen 2
K OOP Aufzählungstypen! enum Currency!!! Java Basics - Anfänger-Themen 5
F ENUM als Variable Java Basics - Anfänger-Themen 4
M Enum: Zugriff auf Konstanten Java Basics - Anfänger-Themen 7
W Enum Konstruktor Type Java Basics - Anfänger-Themen 2
A Erste Schritte ENUM - Werte zurückgeben Java Basics - Anfänger-Themen 5
D Enum als Parameter Java Basics - Anfänger-Themen 6
B Variablen Instanz von Enum zur Laufzeit erstellen und zuweisen Java Basics - Anfänger-Themen 2
B Datentypen Enum vererben/gruppieren? Java Basics - Anfänger-Themen 6
F Datentypen enum Java Basics - Anfänger-Themen 5
J Enum zählen Java Basics - Anfänger-Themen 8
D Einlesen eines Enum-Wertes per console Java Basics - Anfänger-Themen 3
K String mit ENUM vergleichen? Java Basics - Anfänger-Themen 6
N enum vergleiche Klammern? Java Basics - Anfänger-Themen 5
J public enum? in Java Java Basics - Anfänger-Themen 9
D Erste Schritte Enum - das unbekannte Wesen Java Basics - Anfänger-Themen 3
Y ENUM auslesen (Name des ENUM als Variable) Java Basics - Anfänger-Themen 4
P Compiler-Fehler "class, interface, or enum expected" Java Basics - Anfänger-Themen 5
K class, interface or enum expected Java Basics - Anfänger-Themen 14
pg1337 enum-Aufgabe Java Basics - Anfänger-Themen 5
N was sagt enum aus? Java Basics - Anfänger-Themen 3
S Methoden Enum Parameter in Methode Java Basics - Anfänger-Themen 7
G Datentypen enum Frage Java Basics - Anfänger-Themen 3
R Probleme mit Enum Java Basics - Anfänger-Themen 10
B Enum: Instanzen Java Basics - Anfänger-Themen 10
B Generic? Enum - So lösbar? Java Basics - Anfänger-Themen 8
T class, interface, or enum expected Java Basics - Anfänger-Themen 2
M Vererbung Enum Vererbung/Polymorphie Java Basics - Anfänger-Themen 2
P Enum Attribut in Konstruktoren Java Basics - Anfänger-Themen 10
4 Enum Problem Java Basics - Anfänger-Themen 2
turmaline Bindestrich in enum? Java Basics - Anfänger-Themen 5
T Enum - Key als Value ermitteln Java Basics - Anfänger-Themen 7
X enum Fehlermeldung "The public type Day must be defined in its own file" Java Basics - Anfänger-Themen 8
T ist enum.ordinal keine Konstante? Java Basics - Anfänger-Themen 7
R State machine mit enum Java Basics - Anfänger-Themen 9
L enum aus Integer umwandeln Java Basics - Anfänger-Themen 3
C Klasseninstanzierung mit enum-Parameter erzwingen Java Basics - Anfänger-Themen 2
I Enum in String Java Basics - Anfänger-Themen 4
N enum richtig verwenden Java Basics - Anfänger-Themen 5
M for(Enum..., ButtonGroup.getElements()... Java Basics - Anfänger-Themen 3
StrikeTom Fragen zu enum Java Basics - Anfänger-Themen 4
L String zu Enum parsen Java Basics - Anfänger-Themen 8
J Datentypen Array in enum, ?? Wozu ?? Java Basics - Anfänger-Themen 3
S OOP Durch ein Enum iterieren... Java Basics - Anfänger-Themen 47
K Datentypen enum und liste Java Basics - Anfänger-Themen 7
S String - Enum Java Basics - Anfänger-Themen 3
H Eine enum switchen? Java Basics - Anfänger-Themen 7
G enum für Typsicherheit Java Basics - Anfänger-Themen 9
J class, interface, or enum expected - finde Fehler nicht. Java Basics - Anfänger-Themen 4
J OOP enum Java Basics - Anfänger-Themen 2
O Problem (Enum) Java Basics - Anfänger-Themen 14
S Enum als Index Java Basics - Anfänger-Themen 5
H Enum --> int ?? Java Basics - Anfänger-Themen 3
tanja enum in java Java Basics - Anfänger-Themen 3
D class, interface or enum expected Java Basics - Anfänger-Themen 2
A OOP Übergabe eines Wertes an den enum Konstruktor Java Basics - Anfänger-Themen 12
T Simple Enum Fragen Java Basics - Anfänger-Themen 6
J class, interface, or enum expected Java Basics - Anfänger-Themen 4

Ähnliche Java Themen

Neue Themen


Oben