Klassen Instanz anderer Klasse raus geben

Saberon

Mitglied
Hi, ich bin gerade dabei ein eigenes kleines Programm zu schreiben wo es darum geht, Setups aus dem Kartenspiel "Dominion" zu erstellen (Vllt. sagt das jemandem etwas)

Das Problem, das ich dabei habe ist, dass ich nicht auf Instanzen zugreifen kann, die in einer anderen Klasse generiert wurden.


Konkret:

Ich habe Eine Kollektion "Set", welche ein Behälter für "Karten" ist. Diese kann ich auch ganz normal füllen und wieder leeren, allerdings hilft mir das nur bedingt, denn ein Set besteht ja nicht aus irgendwelchen Karten, sondern aus ganz bestimmten, die genau so fest stehen und nicht veränderbar sind.

Also erstelle ich Unterklassen von "Set" und befülle diese spezifisch mit den Karten die in diesem Set drin sind. Also zB alle Basiskarten in die Klasse "Basis exends Set"


Wenn ich in der Main methode der Hauptklasse aber auf die Karten des Basissets zugreifen möchte, kommt die Meldung "... cannot be resolved to a variable" Was muss ich dafür tun? Habs schon mit einem getter versucht, allerdings brauchte das nichts, die Meldung besteht nach wie vor.



Des besseren Verständnissis halber hier der für das Problem relevante Teil des Codes bzw. ein stark vereinfachter Code:


Java:
public class Set {
  
public static class Karte implements Comparable<Karte> {
      
        static int nextNumber;
        int nummer;
        String name;
        int kosten;
      
        public Karte(String name, int kosten){
            nextNumber++;
            this.kosten = kosten;
            this. name = name;
            this.nummer = nextNumber;
          
        }

        public int compareTo(Karte o) {
            return nummer - o.nummer;
        }
      
        public String toString(){
            return "CUSTOM: #" + nummer + " " + name + ", Kosten: " + kosten;          
        }

}

}

Java:
public class Basis extends Set {
 
    Karte Kapelle = new Karte("Kapelle", 2);
    Karte Keller = new Karte("Keller", 2);
 
 
    public void get(Karte k){
        System.out.println(k);
    }

}

Java:
public class Main {
 
    public static void main(String[] args){
     
        Set Basis = new Basis();
     
        Basis.get(Keller);
     
    }

}




Vielen Dank schon mal
 
Zuletzt bearbeitet:

InfectedBytes

Top Contributor
Ich würde dir ein Grundlagen Buch empfehlen: http://openbook.rheinwerk-verlag.de/javainsel/
Deine get-Methode erwartet als Parameter ein Objekt vom Typ Karte. Dann versuchst du es mit Basis.get(Keller) aufzurufen, logischerweise meckert der Compiler, weil er keine Variable mit dem Namen Keller findet.
Was du machen könntest wäre: Basis.Keller
Aber das ist etwas unschön.

Außerdem wäre es sinnvoller wenn du eine Liste/Collection verwendest, welche speichert welche Karten vorhanden sind. Z.b. ganz einfach:
Java:
ArrayList<Karte> basis = new ArrayList<>();
basis.add(new Karte("Kapelle", 2));
basis.add(...);
Du könntest dann einfach alle Karten wie folgt ausgeben:
Java:
for(Karte karte : basis) {
  System.out.println(karte);
}

p.s.
Nach Konvention sollte man nur Klassennamen groß schreiben und instanzen klein.
Also:
Java:
public class Karte { // Klassenname groß

}
Java:
Karte keller = new Karte("Keller", 2); // Instanz klein

Außerdem sollte ein getter, etwas zurückgeben (Stichwort return)
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
M Neu instanzierte Klasse übernimmt Werte von anderer Instanz Java Basics - Anfänger-Themen 4
B Klassen Auf Instanz anderer Klasse zugreifen Java Basics - Anfänger-Themen 1
S Einfach-Verkettete-Listen Ausgabe zeigt nur 1. und letzte instanz Java Basics - Anfänger-Themen 2
frager2345 Singleton-Muster Java ->Nur eine Instanz einer Klasse erzeugen können Java Basics - Anfänger-Themen 45
H String Repräsentation eines Rechtecks mit Instanz-Methode Java Basics - Anfänger-Themen 8
O Mit Instanz von Oberklasse auf Unterklasse zugreifen Java Basics - Anfänger-Themen 2
O Wie erstelle ich eine Instanz in einer Klasse für die ich die Instanz will? Java Basics - Anfänger-Themen 4
T Auf Instanz der selben Klasse aus überschriebener Methode in Methode zugreifen. Java Basics - Anfänger-Themen 2
T Inhalt aus TextField in Attribut einer Instanz schreiben Java Basics - Anfänger-Themen 5
F Wann ist es eine Instanz und wann nicht? Java Basics - Anfänger-Themen 1
Kirby.exe Generische Objekt Instanz erstellen Java Basics - Anfänger-Themen 14
M Java Instanz-Variablen ? Java Basics - Anfänger-Themen 3
I Instanz einer anderen Klasse zurückgeben Java Basics - Anfänger-Themen 34
G Unterschied Instanz- Klassenvariable Java Basics - Anfänger-Themen 11
F Mehrere Instanzen der Klasse A EINER Instanz der Klasse B übergeben Java Basics - Anfänger-Themen 3
F OOP Instanz einer Klasse an eine andere weitergeben Java Basics - Anfänger-Themen 16
C Instanz einer Klasse während if-Abfrage erzeugen und bei zweiter if-Abfrage wiederverwenden Java Basics - Anfänger-Themen 6
C Group, Actor und Instanz-Zugriff, LibGDX Java Basics - Anfänger-Themen 4
BadBat Klassen instanz als variable + methodenaufruf Java Basics - Anfänger-Themen 4
T Auf Instanz einer Liste zugreifen Java Basics - Anfänger-Themen 2
P Instanz mit .add Methode von einer Klasse zur anderen? Java Basics - Anfänger-Themen 6
H Klassen Von Instanzvariablen auf Instanz schließen Java Basics - Anfänger-Themen 21
W Methoden Methode ohne Parameter auf Instanz eines Objekts aufrufen? Java Basics - Anfänger-Themen 14
J Variablen Unterschied zwischen lokalen-, Instanz-, Klassenvariablen Java Basics - Anfänger-Themen 6
T Junit Mockito: Instanz von inneren erzeugten Objekten Java Basics - Anfänger-Themen 4
U JavaFX eine Vbox Instanz pro Pane? Java Basics - Anfänger-Themen 2
D Instanz einer Subklasse anhand deren Superklasse Java Basics - Anfänger-Themen 5
K Zugriff auf Variabeln Wert einer Instanz Java Basics - Anfänger-Themen 4
O OOP Methoden bei erstellen einer Instanz und mehr Java Basics - Anfänger-Themen 4
S Methoden eine Instanz einer eigenen Klasse als parameter übergeben Java Basics - Anfänger-Themen 9
S Wann existiert eine Instanz (eigene Klasse) Java Basics - Anfänger-Themen 8
E Von Instanz des Dialogs auf das Frame zugreifen Java Basics - Anfänger-Themen 8
kaoZ Android Programmierung / Erstellen einer neuen Instanz Java Basics - Anfänger-Themen 2
B Variablen Instanz von Enum zur Laufzeit erstellen und zuweisen Java Basics - Anfänger-Themen 2
G Undefined Instanz/Konstruktoraufruf Java Basics - Anfänger-Themen 8
S Ein Attribut/Instanz eines bestehendes Objektes mit SETTER Methode ändern Java Basics - Anfänger-Themen 3
M Initialisierungsblock beim Erzeugen einer Instanz Java Basics - Anfänger-Themen 6
J Instanz durch String Java Basics - Anfänger-Themen 8
U final Instanz Java Basics - Anfänger-Themen 11
C Klassen Zugriff auf Instanz einer anderen Klasse Java Basics - Anfänger-Themen 9
F Array als Instanz einer Klasse Java Basics - Anfänger-Themen 8
P Klassen Instanz einer Klasse in ihrer eigenen Definition erzeugen? möglich? Java Basics - Anfänger-Themen 4
O Erste Schritte Klassenname zurückgeben, keine instanz Java Basics - Anfänger-Themen 23
0 Log4J Instanz erzeugen Java Basics - Anfänger-Themen 2
K Methoden Zustand innerhalb einer Instanz ändern Java Basics - Anfänger-Themen 2
B Geerbte Instanz kann keine void Methode ausführen?! Java Basics - Anfänger-Themen 15
pindakaas Instanz einer Klasse in einer anderen erzeugen Java Basics - Anfänger-Themen 6
L Instanz Problem Java Basics - Anfänger-Themen 4
E ActionListener erkennt instanz nicht Java Basics - Anfänger-Themen 9
M JRadioButton keine Instanz von ButtonModel Java Basics - Anfänger-Themen 10
B Daten in Instanz einer Klasse ändern / abfragen Java Basics - Anfänger-Themen 12
A Instanz einer Klasse Java Basics - Anfänger-Themen 2
S Instanz(en) einer Singleton-Klasse Java Basics - Anfänger-Themen 11
S OOP Warum gleiche Instanz der Klasse? (Factory-Muster) Java Basics - Anfänger-Themen 13
O zugriff auf eine Instanz Java Basics - Anfänger-Themen 8
U Instanz aufrufen Java Basics - Anfänger-Themen 3
A Stilfrage: statische Variable mit Instanz der gleichen Klasse Java Basics - Anfänger-Themen 8
Antoras eine Instanz von mehrere Klassen aus nutzen Java Basics - Anfänger-Themen 2
D Wie neue Instanz einer Klasse erstellen, von der ich nur eine andere Instanz kenne? Java Basics - Anfänger-Themen 13
D Servlet kann nicht auf Instanz zugreifen Java Basics - Anfänger-Themen 10
G neue Instanz von ArrayList Java Basics - Anfänger-Themen 5
G Name der Instanz einer Klasse. Java Basics - Anfänger-Themen 2
W IE Instanz öffnen / Ausführbare Datei öffnen Java Basics - Anfänger-Themen 2
G Was passiert mit eine Methode bei einer Instanz Java Basics - Anfänger-Themen 13
D vererbung, kinder einer instanz. Java Basics - Anfänger-Themen 25
D Bei Event soll Instanz sich selbst löschen Java Basics - Anfänger-Themen 4
G Vererbung mit einer Instanz aus der Superklasse Java Basics - Anfänger-Themen 2
J Generics Probleme mit instanz von T Java Basics - Anfänger-Themen 4
H OO-Anfänger: mehrere Klassen greifen auf eine Instanz zu Java Basics - Anfänger-Themen 9
H instanz von Button wird nicht erkannt! Java Basics - Anfänger-Themen 6
P Instanz mit allen Attributen ausgeben Java Basics - Anfänger-Themen 3
B Sortieren von Objekt Arrays nach einer Instanz Java Basics - Anfänger-Themen 8
E Eine Klasse hat eine Instanz von sich selbst. Java Basics - Anfänger-Themen 6
W zugriff auf jframe klasse und deren instanz geht nicht? Java Basics - Anfänger-Themen 11
G Instanz-Rückgabewerte abspeichern Java Basics - Anfänger-Themen 2
F Socket Instanz auf Klasse welche von Socket erbt zuweisen Java Basics - Anfänger-Themen 3
I In Instanz ausgeben wer sie erzeugt hat Java Basics - Anfänger-Themen 2
F nur 1 Instanz 1 Klasse --> static? Java Basics - Anfänger-Themen 10
P Instanz kann nicht erstellt werden. Java Basics - Anfänger-Themen 2
M Von Instanz auf instanzierende Klasse zugreifen Java Basics - Anfänger-Themen 5
S paintComponent, neue Instanz überschreibt wohl alte Instanz Java Basics - Anfänger-Themen 6
D Instanz von Graphics in run() Java Basics - Anfänger-Themen 8
J generische klassen neue Instanz Java Basics - Anfänger-Themen 5
D Instanz einer Klasse in einer anderen klasse erzeugen Java Basics - Anfänger-Themen 3
P Zugriff auf Instanz in der anderen Klasse geht nicht! Java Basics - Anfänger-Themen 4
N Objekt seine eigene Instanz löschen lassen? Java Basics - Anfänger-Themen 7
S will instanz einer Klasse erzeugen - mach irgendwas falsch Java Basics - Anfänger-Themen 6
T neue Instanz von JFileChooser => applikation friert ein Java Basics - Anfänger-Themen 2
D Unterschied zwischen Referenz auf Objekt/Instanz von Objekt Java Basics - Anfänger-Themen 9
F Prüfen, ob Instanz existiert Java Basics - Anfänger-Themen 14
J Brett vorm Kopf - Klasse aufrufen/instanz *?* Java Basics - Anfänger-Themen 11
M Methoden oder Instanz statisch? Java Basics - Anfänger-Themen 7
P Instanz in einer Variable speichern ? Java Basics - Anfänger-Themen 4
H Instanz einer Klasse übergeben und dynamisch auswerten Java Basics - Anfänger-Themen 3
H eindeutige Instanz erzeugen Java Basics - Anfänger-Themen 4
MoxMorris Wie macht man String[] = String[] aus einer anderer Methode? Java Basics - Anfänger-Themen 18
N Klassen Methoden anderer Klassen aufrufen Java Basics - Anfänger-Themen 4
M variable in anderer funktion aufrufen Java Basics - Anfänger-Themen 10
julian0507 Array aus Methode in anderer Methode sichtbar machen Java Basics - Anfänger-Themen 10
Encera Auf Objekte aus anderer Klassen zugreifen Java Basics - Anfänger-Themen 20

Ähnliche Java Themen

Neue Themen


Oben