Erste Schritte Konstruktor variable in die klasse

kill_dmp

Aktives Mitglied
hi zusammen

ich habe eine frage
und hoffe das ihr mir helfen könnt
in meinen Konstruktor nurtze ich die variabel(array) grundstück mit [kartengröße.width][kartengröße.height]
weil ich nicht weiss wie groß die karte wird
jetzt meine frage wie bekomme ich die variabel aus dem konstruktor in die klasse ohne das ich ein array machen muss was eine feste größe hat sonder nur die größe der karte

das ziel ist es grundstück[][] mit seinen inhalt in der metode unten zu nutzen




Java:
package Stadt;

import java.awt.Color;
import java.awt.Dimension;
import java.awt.Point;
import java.lang.reflect.Array;
import java.util.ArrayList;

import javax.swing.ImageIcon;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.text.Position;

import Gui_Fenster.HauptFenster;

public class KartenÜbersicht extends JPanel {
	
	
	

	public KartenÜbersicht(Dimension kartengröße) {
		setLayout(null);
		KarteErstellen(kartengröße);
	
	}
public void KarteErstellen(Dimension kartengröße){
	ImageIcon bild_FreiesGrunstück = new ImageIcon(getClass().getResource(
			"..//Gui_Fenster//Grundstück_lehr64.png"));
	Grundstück[][] grundstück = new FreiesGrundstück[kartengröße.width][kartengröße.height];
	JLabel[][] l_karte = new JLabel[kartengröße.width][kartengröße.height];
	for (int a = 0; a < kartengröße.width; a++) {
		for (int b = 0; b < kartengröße.height; b++) {
			grundstück[a][b] = new FreiesGrundstück();
			if (grundstück[a][b].ItemID == 0) {
				l_karte[a][b] = new JLabel(bild_FreiesGrunstück);
				l_karte[a][b].setBounds(a * 64, b * 64, 64, 64);
				add(l_karte[a][b]);
				l_karte[a][b].repaint();

			}

		}

	}
}
	public void StartRandom(Dimension xy) {
		for (int a = 0; a < xy.getWidth(); a++) {
			for (int b = 0; b < xy.getHeight(); b++) {
				
				
			}
			
		}
	}
}
 
Zuletzt bearbeitet:

Gucky

Top Contributor
Du kannst ein noch nicht festgelegtes Array deklarieren und dieses im Konstruktor überschreiben. Oder du nimmst eine ArrayList, die nur vernachlässigbare Performanceverluste verursacht.
 

kill_dmp

Aktives Mitglied
ich habe auch schon so gedacht nur wolte ich so wenig wie möglich leistung verlieren wiemöglich. wenn ich karte nur 200*200 ist sind das schon knap 2 sek im späteren verlauf wir das min noch mal 10 und das dann auf 18 karten
d h die zeit wäre bei ca. 6 min und ich weis keinen der so lange warten will für 1 spiel
 
Zuletzt bearbeitet:

Gucky

Top Contributor
Was genau hast du denn vor? Was für eine Art Spiel soll es werden? Ich bin mir fast sicher, dass es da eine wesentlich effizientere Möglichkeit gibt.
 

kill_dmp

Aktives Mitglied
das ganze soll eine karte werden wo man jedes feld anklicken kann und eine aktion machen kann
es soll erweiterbar werden so, das wenn man am karten ende angekommen ist sich die karte um die gleich größe erweitert in die richtung wo man aneckt.
alle häuser sind so eingestellt das sie sich auf der karete nach bestimten bedingungen automatich erweitern so das die lehren grunstücke nach und nach bebaut werden.
das spiel soll auf 18 oder 19 karten laufen die sich bis zu 10 mal verdoppeln können.
 

kill_dmp

Aktives Mitglied
mir ist grade aufgefallen das, das geht meine frage ist nur hat das iwelch negativen auswirkungen oder kann man das einfach so machen
ich habe bis her gelernt das man ein array IMMER vorher einen wert geben muss deswegen verwird mich das jetzt etwas


Java:
public class KartenÜbersicht extends JPanel {
   Grundstück[][] grundstück;
   JLabel[][] l_karte;
   
   
 
    public KartenÜbersicht(Dimension kartengröße) {
        setLayout(null);
        KarteErstellen(kartengröße);
   
    }
public void KarteErstellen(Dimension kartengröße){
    ImageIcon bild_FreiesGrunstück = new ImageIcon(getClass().getResource(
            "..//Gui_Fenster//Grundstück_lehr64.png"));
    Grundstück[][] grundstück = new FreiesGrundstück[kartengröße.width][kartengröße.height];
    JLabel[][] l_karte = new JLabel[kartengröße.width][kartengröße.height];
    for (int a = 0; a < kartengröße.width; a++) {
        for (int b = 0; b < kartengröße.height; b++) {
            grundstück[a][b] = new FreiesGrundstück();
            if (grundstück[a][b].ItemID == 0) {
                l_karte[a][b] = new JLabel(bild_FreiesGrunstück);
                l_karte[a][b].setBounds(a * 64, b * 64, 64, 64);
                add(l_karte[a][b]);
                l_karte[a][b].repaint();
 
            }
 
        }
 
    }
}
    public void StartRandom(Dimension xy) {
        for (int a = 0; a < xy.getWidth(); a++) {
            for (int b = 0; b < xy.getHeight(); b++) {
               
               
            }
           
        }
    }
}
(anderung ich habe in zeile 2 und 3 die arrays ohne festen wert erstell und erst im konstruktor den wert übergeben)

[EDIT]
@Gucky
ja das wird es wohl werden deswegen wolte ich auch wissen wie man speicherspart da mir das mit den array zuviel war/ist und es kann sein das das noch 1-2 einträge hierschreiben werde, da ich mir alles allein breibingen muss und sich ab und an mal ein parr fragen stellen.[/EDIT]
 
Zuletzt bearbeitet:

geqoo

Bekanntes Mitglied
Müssen tut man gar nichts. Du kannst das array auch uninitialisiert lassen, dann geben die meisten compiler nur eine Warnung, dass das Feld nicht initialisiert wurde. Man läuft dann natürlich Gefahr in eine NullPointerException zu laufen, wenn das Feld nicht initialisiert wurde.
Das Ganze im Konstruktor zu machen, ist schon ok, solange die Klasse keine statischen Funktionen hat und die Liste nicht statisch ist, da man auf die Liste sowieso nicht vor der Instanzierung zugreifen kann.
 
Zuletzt bearbeitet:
Ähnliche Java Themen
  Titel Forum Antworten Datum
C Variable dem Konstruktor einer Klasse übergeben Java Basics - Anfänger-Themen 8
Aprendiendo [JAVA-Syntax] (int... variable) bei einem Konstruktor Java Basics - Anfänger-Themen 8
S Variable, die im Konstruktor gesetzt wird, wird nicht gefunden vom Compiler. Java Basics - Anfänger-Themen 4
X Variable Parameter in Konstruktor Java Basics - Anfänger-Themen 7
K Datentypen Globale Variable direkt initialisieren oder im Konstruktor? Java Basics - Anfänger-Themen 13
W Null-Pointer trotz Konstruktor? Java Basics - Anfänger-Themen 9
M Konstruktor-Aufruf im Konstruktor, aber nicht am Anfang? Java Basics - Anfänger-Themen 4
T Schlüsselworte Schlüsselwort this im Konstruktor Java Basics - Anfänger-Themen 3
frager2345 Warum muss ich hier im Konstruktor meine Exeption nicht abfangen ? Java Basics - Anfänger-Themen 4
J Konstruktor Java Basics - Anfänger-Themen 18
frager2345 Java Singleton Muster -> Methode für Konstruktor mit Parametern Java Basics - Anfänger-Themen 3
G Welche Attribute kommen in den Konstruktor? Java Basics - Anfänger-Themen 5
M wird der Konstruktor nicht als 1. ausgeführt? Java Basics - Anfänger-Themen 13
G Konstruktor und update Java Basics - Anfänger-Themen 4
K Kopier-Konstruktor Java Basics - Anfänger-Themen 6
S Default Konstruktor Java Basics - Anfänger-Themen 7
M Konstruktor ohne Übergabe eines Wertes Java Basics - Anfänger-Themen 7
M Wie kann ich in einem Konstruktor die Methode eines anderen Interfaces mit den jeweiligen Parametern aufrufen? Java Basics - Anfänger-Themen 8
J Vier gewinnt in Java,Spieler Konstruktor Java Basics - Anfänger-Themen 8
kxrdelis Konstruktor für ein Rechtwinkliges Dreieck Java Basics - Anfänger-Themen 10
Zeppi OOP Bruch kürzen im Konstruktor Java Basics - Anfänger-Themen 2
HorstSchröder Konstruktor mit Initialwert Java Basics - Anfänger-Themen 1
C Konstruktor ab serialisiertem Objekt Java Basics - Anfänger-Themen 4
J Input/Output Konstruktor ergänzen, der zur Datei mit einem Objekt passt Java Basics - Anfänger-Themen 0
InfinityDE Problem mit Datenübergabe an Konstruktor Java Basics - Anfänger-Themen 7
B Konstruktor mit Array als Parameter Java Basics - Anfänger-Themen 3
G Variablen Array Länge über den Konstruktor definieren Java Basics - Anfänger-Themen 4
L Konstruktor für eine Map-Datei/Map-Datei einlesen Java Basics - Anfänger-Themen 5
C Interface und Konstruktor Java Basics - Anfänger-Themen 1
H Generische Konstruktor Java Basics - Anfänger-Themen 12
MiMa Seltsames Verhalten im Konstruktor Java Basics - Anfänger-Themen 6
S Konstruktor passt nicht zum Rest Java Basics - Anfänger-Themen 11
C Unbekannter "Konstruktor"?? Java Basics - Anfänger-Themen 10
W OOP Warenlager mit Array(Konstruktor, Methoden) Java Basics - Anfänger-Themen 39
R Objekt in Konstruktor ist nicht zulässig Java Basics - Anfänger-Themen 5
A Mit einer Methode den Konstruktor aufrufen? Java Basics - Anfänger-Themen 2
B Warum können super() und this() nicht gemeinsam in einem Konstruktor verwendet werden? Java Basics - Anfänger-Themen 7
K Konstruktor für ein Objekt mit Zugriffsmethoden Java Basics - Anfänger-Themen 7
H Unterschied Konstruktor und Klassenname x = new Klassenname; Java Basics - Anfänger-Themen 3
B Klassen Array Parameter im Konstruktor? Java Basics - Anfänger-Themen 4
E Konstruktor mit Methode Java Basics - Anfänger-Themen 7
E ArithmeticException im Konstruktor Java Basics - Anfänger-Themen 4
S Konstruktor, Objekte Java Basics - Anfänger-Themen 4
F Konstruktor richtig implementiert? Frage zu Benutzereingaben... Java Basics - Anfänger-Themen 9
W Typecastin im Konstruktor? Java Basics - Anfänger-Themen 2
A Variablen Variablenwert über Konstruktor ändern Java Basics - Anfänger-Themen 3
F Arrays im Konstruktor Java Basics - Anfänger-Themen 5
C Konstruktor mit und ohne Parameterliste Java Basics - Anfänger-Themen 13
L Instanzvariablen, Veerbung, Konstruktor Java Basics - Anfänger-Themen 32
E Best Practice Konstruktor mit bestehender Intanz der gleichen Klasse aufrufen Java Basics - Anfänger-Themen 4
E Plausibilitätsprüfung in dem Konstruktor mit Ausnahmebehandlung Java Basics - Anfänger-Themen 8
A Aufruf von Konstruktor , obwohl 2 Parameter weggelassen werden Java Basics - Anfänger-Themen 7
A Aufruf von Konstruktor , obwohl 2 Parameter weggelassen werden Java Basics - Anfänger-Themen 0
D Compiler-Fehler Konstruktor von Superklasse übernehmen Java Basics - Anfänger-Themen 1
P Counter im Konstruktor Java Basics - Anfänger-Themen 11
J toString-Methode in Verbindung mit varArgs-Konstruktor Java Basics - Anfänger-Themen 18
I Einträge in den Konstruktor Java Basics - Anfänger-Themen 3
J Superklassen Konstruktor Verständnisfrage Java Basics - Anfänger-Themen 1
G Int-Array im Konstruktor Parameter Java Basics - Anfänger-Themen 37
T Datentypen Warum mit Konstruktor Objektvariablen initalisieren? Java Basics - Anfänger-Themen 19
A Vererbung bei Klassen mit Objekt der Klasse im Konstruktor Java Basics - Anfänger-Themen 4
P Konstruktor. Java Basics - Anfänger-Themen 4
D Best Practice Objekt automatisch im Konstruktor füllen? Java Basics - Anfänger-Themen 9
D Objekt oder Konstruktor Java Basics - Anfänger-Themen 2
F Java default Konstruktor Java Basics - Anfänger-Themen 1
R Fragen über den Konstruktor Java Basics - Anfänger-Themen 0
T Konstruktor mit Referenzdatentypen Java Basics - Anfänger-Themen 5
H Klassen Konstruktor Parameter als Instanzvariablen zwischen speichern... Java Basics - Anfänger-Themen 11
T setter im Konstruktor einbauen? Java Basics - Anfänger-Themen 8
R ArrayList im Konstruktor. Java Basics - Anfänger-Themen 4
T Konstruktor Probleme Java Basics - Anfänger-Themen 3
J Wie lässt sich der Konstruktor einer Klasse einer Funktion einer Klasse nutzen. Java Basics - Anfänger-Themen 4
C Generic im Konstruktor Java Basics - Anfänger-Themen 1
F Privater Konstruktor und statische Methoden Java Basics - Anfänger-Themen 4
W Konstruktor von FileInputStream nicht gefunden Java Basics - Anfänger-Themen 18
B Methoden Konstruktor im Konstruktor aufrufen Java Basics - Anfänger-Themen 2
N Aufgabe: Pizza Konstruktor mit mehreren beliebigen Durchmesser/Preiskombinationen Java Basics - Anfänger-Themen 8
K arraygröße durch variablen Konstruktor? Java Basics - Anfänger-Themen 7
K ArrayList in Konstruktor - wie späterer Zugriff Java Basics - Anfänger-Themen 2
G Verwendung von Konstruktor Java Basics - Anfänger-Themen 8
X Übergabeparameter Konstruktor (File) Java Basics - Anfänger-Themen 13
K Wieso muss man finale statische Variablen sofort oder eben im Konstruktor initialisieren? Java Basics - Anfänger-Themen 2
C Konstruktor in Abstrakten Klassen Java Basics - Anfänger-Themen 4
B Konstruktor Problem Java Basics - Anfänger-Themen 8
Joew0815 konstruktor und damit erstellte objekte Java Basics - Anfänger-Themen 1
K Hashtable mit eigenen Konstruktor Java Basics - Anfänger-Themen 2
S Java Fragen Konstruktor & Statische Methoden Java Basics - Anfänger-Themen 4
H Fehler im Konstruktor abfangen Java Basics - Anfänger-Themen 10
J Konstruktor Problem bei Vererbung Java Basics - Anfänger-Themen 1
I Java Eingabe aus einer anderen Klasse in eine andere an Konstruktor übergeben Java Basics - Anfänger-Themen 4
O Konstruktor und Default Konstruktor Java Basics - Anfänger-Themen 7
S Kapselung Objekt bei Übergabe an Konstruktor nicht initalisiert Java Basics - Anfänger-Themen 3
I Vererbung Frage zum Konstruktor Java Basics - Anfänger-Themen 5
Y Konstruktor - Setter/Getter Java Basics - Anfänger-Themen 3
P Konstruktor Java Basics - Anfänger-Themen 4
E Initialisierung von Attributen und Konstruktor Java Basics - Anfänger-Themen 0
H Compiler-Fehler NullPointerException bei .length, Konstruktor fehlerhaft? Java Basics - Anfänger-Themen 3
M Objekt Array an konstruktor übergeben und Initialisieren Java Basics - Anfänger-Themen 1
llabusch Vererbung Super Konstruktor Java Basics - Anfänger-Themen 5
P Erste Schritte WindowBuilder erstellt Konstruktor wie zugreifen Java Basics - Anfänger-Themen 5

Ähnliche Java Themen

Neue Themen


Oben