Array mit Objact als daten typ

Status
Nicht offen für weitere Antworten.

assault

Aktives Mitglied
ich habe die aufgabe eine kleine "bank simulation" fertig zu machen und da gehört auch das anlegen mehrer konten zu. ich habe mir jetzt gedacht ich erstelle ein array und speichere in jeder array position ein objekt vom typ konto(enthält name, kontonr.,... ).
soweit so gut hab alles vertig aber beim erstellen des arrays und beim aufruf/erstellen des objekts meckert er....

hier das erstellen des arrays
Code:
boolean n = false;
		Konto.konto[] DBArray = new Konto.konto[100];
		int anr = 0;

und hier des kontos
Code:
switch(w){
					case 1:
						DBArray[anr] = new Konto.konto();
						break;

und die konto class sieht so aus

Code:
public class Konto {
	
	public static void konto(){
		String name = IO.promptAndReadString("Bitte Namen eingeben: ");
		String vorname = IO.promptAndReadString("Bitte Vornamen eingeben: ");
		int guthaben = IO.promptAndReadInt("Bitte Guthaben eingeben: ");		
		int blz = 360999;
		int knr = 0;
		
		if(guthaben <= 0)
				{System.out.println("Sie können Ihr Konto nicht beim anlegen überziehen!!!");
				}
		
				knr = knr +1;
			
			
	} 
	
}

was mache ich da falsch???
 
S

SlaterB

Gast
> was mache ich da falsch???

zunächst mal den Fehler, keine Frage zu stellen,

'meckert er.... ' ist auch eine tolle Fehlerbeschreibung

-------

allgemein solltest du nochmal nachlesen oder anscheinend überhaupt zum ersten Mal lesen,
was man unter einer Klasse mit Exemplarvariablen/ Klassenattributen und einem Konstruktor versteht,

die statische Operation legt sich vielleicht paar lokale Variablen an, aber ganz bestimmt kein Konto (Rückgabewert ist ja auch void)
 

assault

Aktives Mitglied
also liegts jetzt nicht am erstellen des arrays, sondern an dem objekt das ich erstelle(n will)?

der fehler an sich ist folgender das er mit die stellen mit
Code:
Konto.konto[]
markiert und ich dazu die fehlermeldung
Konto.konto cannot be resolved to a type
bekomme,
wenn ich da nur

Code:
Konto[]
hin mache läuft es aber er geht nur in die klass führt aber die methode nicht aus :(

Edit: wegen den konstruktoren, soweit ich verstanden habe sind die ja nur dazu da um default werte zu setzten und ich persönlich bevorzuge dann die variante die gemahct habe... das andereist mir sonst zuviel arbeit und zu komliziert
 
S

SlaterB

Gast
woran irgendwas liegt wage ich nicht zu mutmaßen, da du ja noch nicht gesagt was was überhaupt das Problem ist,
(edit: die Fehlermeldung hast du nun auch reingeschrieben)

new Konto.konto();
ist aber nicht erlaubte Syntax,

konto() hat den Rückgabewert void, welchen du nicht einem Array-Feld zuweisen kannst

und wie gesagt tut konto() bisschen so als hätte es was mit einem Konstrukor zu tun,

also hast du eine Menge zu tun, da genaue Verantwortlichkeiten zu identifizieren bringt nix,
vermischt sich ja alles
 

assault

Aktives Mitglied
wie müsste ich denn das array sonst erstellen???

so oder?

Code:
Konto[] DBArray = new Konto[100];

aber wie würde ich dann das object da "reinladen?"
 
S

SlaterB

Gast
Variablen klein schreiben,
ein Konto einfügen z.B. mit

dBArray[anr] = new Konto();


edit:
Konto[] DBArray = new Konto[100];
ist viel besser als
Konto.konto[] DBArray = new Konto.konto[100];
ja,
hatte ich noch gar nicht gesehen
 
S

SlaterB

Gast
was ist ein "Konto.konto"? was ist 'auf und zu machen'?
sprichst du von der statischen Operation konto()?
die ist wie gesagt kein Konstruktor, das musst du noch ändern

oder wenn du bewußt keinen Konstruktor verwenden willst:
array = Konto.konto();
dann muss diese Operation aber das Konto erstellen und als Rückgabewert zurückgeben (statt void)
 

assault

Aktives Mitglied
wegen den konstruktoren, soweit ich verstanden habe sind die ja nur dazu da um default werte zu setzten??? mit konto.konto mein ich eigentlich

Code:
public class Konto { 
    
   public static void konto(){
wobei ich da jetzt geändert habe zu
Code:
public class Konto { 
    
   public void Konto(){

Edit: mit auf und zu mein ich das eclipse beim debuggen kurz zur class konto springt und wieder zurück zu main methode ohne wirklich

Code:
public class Konto { 
    
   public void Konto(){
in der Methode Konto was zu machen
 
S

SlaterB

Gast
siehe auch Ende meines letztes Posts

--------

neue Infos:
- Operationen klein schreiben, nur Konstruktoren groß!

- nie Operation wie die Klasse nennen, so heißen Konstruktoren!!

- eine nichtstatische Operation kann erst aufgerufen werden, wenn ein Objekt erstellt wurde

- erzähl doch erstmal von Anfang an, was passieren soll,
wenn wann warum wie ein Objekt der Klasse Konto erstellt usw.
 

ARadauer

Top Contributor
ich nehme an, dass deine member variablen satic sind, sprich du hast allgemein immer das selbe konto

public static void konto(){

weg mit dem static und mach einen konstruktor draus

und dann so wie slater gesagt hat

dBArray[anr] = new Konto();

die Konten würde ich nicht in Konto verwallten...
und allgemein hallte ich eine ArrayList für sinnvoller als eine Array

schau dir bitte nochmal die grundlagen zum thema static an
 

assault

Aktives Mitglied
also ich habe mir 3 klassen erstellt.

Code:
public class Run {
	public static void main (String[]args){
		
		
		int konto_nr;
		int w;
		boolean n = false;
		Konto[] DBArray = new Konto[100];
		int anr = 0;
		
		while (n == false){
			w = Menue.m();	
			
			if(w == 1 || w ==2 || w == 3 || w == 4){
				switch(w){
					case 1:
						DBArray[anr] = new Konto.Konto();
						break;
					case 2:
						
						break;
					case 3:
						
						break;
					case 4:
						
						break;
					
				}
			}
			else {continue;}
			
				w = Menue.c();
				if ( w == 1 ){n = true;}
				else{n = false;}

		} 	
	}
}

Code:
public class Menue {
	public static int m(){

		int w;

			System.out.println("|*************************|");
			System.out.println("|*         Bank          *|");
			System.out.println("|*************************|");
			System.out.println("|* 1 - Konto anlegen     *|");
			System.out.println("|* 2 - Einzahlen         *|");
			System.out.println("|* 3 - Abheben           *|");
			System.out.println("|* 4 - Kontodatenausgabe *|");
			System.out.println("|*************************|");
			w = IO.promptAndReadInt("Ihre Wahl: ");
		   
			return w;

	}
	
	public static int c(){
		int w;
		
		System.out.println("|*************************|");
		System.out.println("|*         Bank          *|");
		System.out.println("|*************************|");
		System.out.println("|*        Beeden?        *|");
		System.out.println("|* 1 - 'Ja'              *|");
		System.out.println("|* 2 - 'Nein'            *|");
		System.out.println("|*************************|");
			w = IO.promptAndReadInt("Ihre Wahl: ");
		
		return w;
	}
}

und

Code:
public class Konto {
	
	public void Konto(){
		String name = IO.promptAndReadString("Bitte Namen eingeben: ");
		String vorname = IO.promptAndReadString("Bitte Vornamen eingeben: ");
		int guthaben = IO.promptAndReadInt("Bitte Guthaben eingeben: ");		
		int blz = 360999;
		int knr = 0;
		
		if(guthaben <= 0)
				{System.out.println("Sie können Ihr Konto nicht beim anlegen überziehen!!!");
				}
		
				knr = knr +1;
			
			
	} 
	
}

ziel ist es sowas wie ne datenbank aufzubauen

ich will eigentlich ein konto erstellen, nur das ichs nicht in eine objektvariable wie z.B.

wenn ich folgendes machen würde

Konto k = new Konto;

sondern anstelle der objetvariablen (hier k) ein array setzten (hier DBArray[anr]) so, dass ich für jedes array 1-100 ein konto habe, mit name, nummer, blz,...

- Operationen klein schreiben, nur Konstruktoren groß!

- nie Operation wie die Klasse nennen, so heißen Konstruktoren!!


was meinste mit Operationen ??? bzw was sind Operation ???

Edit:

oder wenn du bewußt keinen Konstruktor verwenden willst:
array = Konto.konto();
dann muss diese Operation aber das Konto erstellen und als Rückgabewert zurückgeben (statt void)


wie lasse ich den ein konto sich selbst zurückgeben?
 
S

SlaterB

Gast
Operationen sind alles was man aufrufen kann (mit () am Ende) bis auf die Konstruktoren

> wie lasse ich den ein konto sich selbst zurückgeben?

eine statische Operation ist einfach nur eine Operation unabhängig von der Klasse, die könnte genausogut in 'public class Menue' stehen,
nur weil du eine Operation aufrufst wird nicht automatisch irgendwo ein Objekt erzeugt,
solche Zaubereien gibts nur bei Konstruktoren: new Konto()

--------

übe doch erstmal EIN einzelnes Konto-Objekt zu erzeugen mit
Konto k = new Konto();
und überlege da, was deine statische Operation für eine Aufgabe hat oder wo dessen Code hinkommt wenn du keine statische Operation mehr benutzen willst,
DANACH kannst du immer noch etwas mit einem Array machen
 

assault

Aktives Mitglied
Danke für den Tipp das ich mir nochmal mein Objekt anschauen soll hab erst gar nicht bemerkt das ich das konto objekt voll verbockt habe ^^ thx
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
T Array verkleinern Java Basics - Anfänger-Themen 2
J Array aus Numberfield Eingaben Java Basics - Anfänger-Themen 7
D Array List mit Objekten sortieren Java Basics - Anfänger-Themen 2
onlyxlia Anzahl Random Zahlen mit Scanner abfragen und in Array speichern Java Basics - Anfänger-Themen 10
Ü Java Array - Buchstaben als Zahlen ausgeben Java Basics - Anfänger-Themen 22
Ü Zweidimensionales Array in der ersten Zeile deklarieren Java Basics - Anfänger-Themen 13
Thomas Uppe 2D Array Reihenfolge vermischen Java Basics - Anfänger-Themen 4
T array auslesen Java Basics - Anfänger-Themen 2
Nitrogames Variablen Variable aus JOptionPane Abfrage in Array einfügen Java Basics - Anfänger-Themen 4
moini Auf Array aus Superklasse zugreifen? Java Basics - Anfänger-Themen 2
J ArrayList in 2D-Array konvertieren. Java Basics - Anfänger-Themen 48
M NullPointerException: Cannot read the array length because "this.Kinder" is null Java Basics - Anfänger-Themen 1
P Wieso kann ich als Index für einen Array einen Char angeben? Java Basics - Anfänger-Themen 3
Finn_lol Fehlermeldung bei Schleife mit Array Java Basics - Anfänger-Themen 4
Proxy Chars vor array übergabe toLowerUpcase Java Basics - Anfänger-Themen 14
iAmFaiinez Primzahlen Tester ohne Array Java Basics - Anfänger-Themen 4
S array 2 dimensional treppe Java Basics - Anfänger-Themen 3
S Array 2x2 Blöcke mit 0 und 1 Java Basics - Anfänger-Themen 10
C Array von Klassen Java Basics - Anfänger-Themen 2
julian0507 2Dim-Array Spaltensummen Java Basics - Anfänger-Themen 1
XWing Doppelte Zahlen im Array Java Basics - Anfänger-Themen 8
melisax Java 2D-Array Tabelle Java Basics - Anfänger-Themen 4
melisax Java Array Wert an bestimmtem Index angeben Java Basics - Anfänger-Themen 14
W Items löschen aus String Array vom Custom Base Adapter Java Basics - Anfänger-Themen 2
Proxy Stack erweitern mit neuem Array falls der alte voll ist!? Java Basics - Anfänger-Themen 5
E Array, nächste Zahl zur 5 ausgeben, wie? Java Basics - Anfänger-Themen 42
J Array.list vergleichen Java Basics - Anfänger-Themen 1
W Java-Code mit Array Java Basics - Anfänger-Themen 14
D Reflections & Generisches Array Java Basics - Anfänger-Themen 4
T Array Java Basics - Anfänger-Themen 2
T Array Java Basics - Anfänger-Themen 15
T Wörteranzahl im Array zählen Java Basics - Anfänger-Themen 9
Ostkreuz Zweidimensionaler Array Index Java Basics - Anfänger-Themen 2
S String Array Buchstaben um einen gewissen Wert verschieben Java Basics - Anfänger-Themen 4
R Images aus einem Array ausgeben Java Basics - Anfänger-Themen 3
R 2d Array individuell machen Java Basics - Anfänger-Themen 4
D 2D Char Array into String Java Basics - Anfänger-Themen 2
J Array Median bestimmen Java Basics - Anfänger-Themen 6
S Array Maximum bestimmen mit for und foreach Java Basics - Anfänger-Themen 7
S Prüfen ob ein zweidimensionales Array rechteckig ist Java Basics - Anfänger-Themen 4
N Array Java Basics - Anfänger-Themen 1
J Array Mittleren Wert bestimmen Java Basics - Anfänger-Themen 2
D OOP Array einem Objekt zuweisen Java Basics - Anfänger-Themen 2
O Zahlen aus einem char-array per char + Zeichen addieren Java Basics - Anfänger-Themen 2
S leeres Array statt Null Pointer Exception ausgeben Java Basics - Anfänger-Themen 20
S Inhalte aus Array vergleichen und Max ausgeben Java Basics - Anfänger-Themen 3
M 2d array ohne längen anlegen Java Basics - Anfänger-Themen 4
S Bestimmte werte aus einem Array löschen Java Basics - Anfänger-Themen 2
S Ausgeben wie oft ein Wert in einem Array vorkommt Java Basics - Anfänger-Themen 7
E Reihenfolge der Werte umdrehen (mittels statischem int-Array Java Basics - Anfänger-Themen 3
O 2 Dimensionales Array Java Basics - Anfänger-Themen 6
M Bubble Sort - Int[] Array sortieren Java Basics - Anfänger-Themen 2
javaBoon86 Array mehrere Dimensionen Java Basics - Anfänger-Themen 10
B Array nach Elementwerten sortieren? Java Basics - Anfänger-Themen 1
B Explizit Array definieren geht nicht? Java Basics - Anfänger-Themen 14
D Kleinste Zahl in Array finden die vorher noch errechnet werden müssen. Java Basics - Anfänger-Themen 4
L Gegebenes Array sortieren, indem zufällige Zahlenpaare aus Array ausgewählt werden Java Basics - Anfänger-Themen 14
Say 2-DIM Array Code lesen und verstehen Java Basics - Anfänger-Themen 5
N Array beim erstellen mit Werten füllen Java Basics - Anfänger-Themen 6
C Java Array Struktur, welche ist wann besser? Java Basics - Anfänger-Themen 12
Temsky34 Array IndexOf nicht verfügbar Java Basics - Anfänger-Themen 18
belana wie am besten 2D Array von String to Integer Java Basics - Anfänger-Themen 18
S Array mit Methode löschen Java Basics - Anfänger-Themen 2
J Java To String Methode, Array mit For-Schleife Java Basics - Anfänger-Themen 2
E Durch Muster in Array iterieren Java Basics - Anfänger-Themen 3
L Frage zum Array Java Basics - Anfänger-Themen 1
C 2D Array Ausgabe mit for-Schleife i,j Java Basics - Anfänger-Themen 4
D Methode: Array Reihenfolge tauschen Java Basics - Anfänger-Themen 3
julian0507 Array aus Methode in anderer Methode sichtbar machen Java Basics - Anfänger-Themen 10
P Array vom Typ Klasse Java Basics - Anfänger-Themen 18
Lion.King Array deklarieren und initialisieren Java Basics - Anfänger-Themen 5
P Array-Objekte-Aufruf Java Basics - Anfänger-Themen 22
A CSv.Datei einlesen und die werte in zweidemosional Int Array speichern Java Basics - Anfänger-Themen 9
M Methoden Zweidimensionaler Array mit Setter Methode ändern Java Basics - Anfänger-Themen 4
AkiJou Zeile in 2d Array löschen Java Basics - Anfänger-Themen 2
LilliCherry Array in einer Zeile ausgeben Java Basics - Anfänger-Themen 6
A Elemente in einem Array Java Basics - Anfänger-Themen 5
A Vorkommende Farben ermittel und als Array zurückgeben Java Basics - Anfänger-Themen 7
AhmadSlack Array Java Basics - Anfänger-Themen 7
Jambolo Kartenhand Array Java Basics - Anfänger-Themen 14
ravenz Schleife mit for über String Array „zahlen“und prüfen ob Wert „a“ oder „b“ oder „c“ entspricht (mittels || ) Java Basics - Anfänger-Themen 4
S Eine Variable in einem Array speichern Java Basics - Anfänger-Themen 5
T Methode, die prüft ob in einem Int-Array maximal 2 Zahlen enthalten sind, die größer als ihr Vorgänger sind Java Basics - Anfänger-Themen 5
T String Array Fehler beim Index Java Basics - Anfänger-Themen 3
krgewb byte-Array, das ein Bild repräsentiert Java Basics - Anfänger-Themen 1
1 Array rekursiv durchlaufen Java Basics - Anfänger-Themen 8
I Methoden Wieso wird mein Array "a" verändert und meine Variable "a" nicht? Java Basics - Anfänger-Themen 4
EykS 3D Druckdatei basierend auf 3D Array? Java Basics - Anfänger-Themen 3
sserio Array funktioniert nicht Java Basics - Anfänger-Themen 2
sserio Iterierung über ein zweidimensionales Array Java Basics - Anfänger-Themen 16
sserio Zweidimensionales Array [][] wird untereinander ausgegeben Java Basics - Anfänger-Themen 14
Chris.089 2 Werte im Array tauschen Java Basics - Anfänger-Themen 6
D EinMalEins mithilfe einer for-Schleife und Array Java Basics - Anfänger-Themen 1
L Unbekanntes Problem mit 2d Array Java Basics - Anfänger-Themen 6
L Gridmuster in einem Array Java Basics - Anfänger-Themen 2
sgtcoopa Array übergeben Schleife Java Basics - Anfänger-Themen 0
B Compiler-Fehler Array aus Objekten übergeben Java Basics - Anfänger-Themen 7
padde479 Array Multiplikation der ersten n Zahlen Java Basics - Anfänger-Themen 7
G zweidimensionales int Array sortieren Java Basics - Anfänger-Themen 57
W Array ausgeben Java Basics - Anfänger-Themen 29

Ähnliche Java Themen

Neue Themen


Oben