Eigene Klasse erstellen?

Status
Nicht offen für weitere Antworten.

eldios

Mitglied
hi!
ich will eine methode anlegen mit der ich accounts anlegen kann. hab mir das jetzt so gedacht dass ich das mit einer klasse mache.
Soweit läuft das auch ganz gut nur wenn ich einen zweiten account anlegen will, überschreibt er den ersten. wie kann ich das abändern?
hier mein code.


Code:
	class Account{
		String n_name;
		String v_name;
		int einzahlung;
		
	}



public class bank {

	
	public static void createAccount(String c, String d, int i){
		Account Kunde = new Account();
		Kunde.n_name = c;
		Kunde.v_name = d;
		Kunde.einzahlung = i;
		System.out.println(Kunde.n_name);
		System.out.println(Kunde.v_name);
		System.out.println(Kunde.einzahlung);
	}

         public static void main(String[] args) {
	
		
		createAccount("Mustermann", "Max", 11000 );
		createAccount( "Musterfrau", "Mia", 13700 );
		

	}

}

danke für eure antworten
 
B

Beni

Gast
Wieso überschreiben? Du speicherst deinen Account ja niergends, wie soll er dann überschrieben werden? Die Variable "Kunde" in "createAccount" ist nur lokal und wird gelöscht, sobald "createAccount" ausgeführt wurde.
 

eldios

Mitglied
aso und wie mache ich das das er die irgendwo abspeichert? so dass ich mehrere accounts anlegen kann und er sie nciht gleich wieder löscht?
 

TheJavaKid

Top Contributor
Beni hat gesagt.:
Wieso überschreiben? Du speicherst deinen Account ja niergends, wie soll er dann überschrieben werden? Die Variable "Kunde" in "createAccount" ist nur lokal und wird gelöscht, sobald "createAccount" ausgeführt wurde.
genau

warum schreibt du nicht ne methode mit der ne txt datei oder so erstellt wird die dann ausgelesen wird...

oder ne xml datei...
 

eldios

Mitglied
ich soll das nicht in einer txt datei machen. es soll nur solange gespeichert werden wie das programm läuft.
danch können die accounts wieder wegfallen

also kann ich das so einrichten das er meinetwegen zwei accounts anlegt und die erste nciht mit der zwiten überschreibt?
das ich 2 accounts habe mit denen ich arbeiten kann. ich darf dabei keine txt datei oder eine andere art von dateien benutzen.
 

eldios

Mitglied
jo genau. hab vorgaben bekommen, dass ich das mit ner klasse erreichen soll, da wir das mit externen dateien noch nicht hatten.

deswegen würde ich gerne wissen wie das geht, dass er die accounts speichert und nicht gleich wieder überschreibt. mit einem array geht das eher nicht oder? da das string ja probs mit arrays hat oder wie geht das sonst?

danke für eure hilfe
 
G

Gast

Gast
Hi,

Hausaufgaben werden hier allgemein nicht gerne gelöst.
Du könntest ein Array vom Typ der Klasse Account erstellen und dort immer deine Account Objekte speichern.

Code:
Account[] accountArray=new Account[2];

und dann in der Methode createAccount das Objekt in das ArraySpeichern.

Z.B.
//Kunde 1
accountArray[0]=Kunde;
//Kunde 2
und accountArray[1]=Kunde;

Da du weißt dass du zwei Kunden brauchst kannst du einArray nehmen, ansonsten wäre ein Vector besser.

Gruß
 

chrithym

Mitglied
Gast hat gesagt.:
Hi,

Hausaufgaben werden hier allgemein nicht gerne gelöst.
Du könntest ein Array vom Typ der Klasse Account erstellen und dort immer deine Account Objekte speichern.

Hi!
Wer will denn Hausaufgaebn gelöst bekommen???
Ich habe nur um einen Tipp gebeten...

Aber was solls....
 

SebiB90

Top Contributor
du musst einfach die objecte irgendwo in einer variablen ablegen, wie gesagt in einem array, was aber den nachteil hat das du vorher wissen musst wie viele objecte es werden oder du benutz ne liste wie die java.util.ArrayList da kannste nach lieben objecte rein tun mit der methode add().

@Gast
er hat wirklich nix von einer konkrenten hausaufgabe erzählt die wir für ihn lösen sollen, so wie es manche hier machen "hier die aufgabe: bla bla bla, wie fang ich an?" und haben kein stück code. doch das hier ist in ordnung find ich und für solche probleme sind wir schließlich da.
 
G

Gast

Gast
@chrithym:

Also das mit den Hausaufgaben habe ich nicht böse gemeint. Habe ich auf den Hackl bezogen.

"ist das so was wie ne java-aufgabe (zB für school)"

Außerdem habe ich dir eine lösung für dein Problem genannt. Also so dumm kann ich dich gar nicht angemacht haben ^^.

@SebiB90 : Du hast inhaltlich dasselbe wie ich gepostet. :)
Bevor du es mißverstehst, nein ich will dich nicht dumm anmachen.

Gruß
 

eldios

Mitglied
cool danke habt mir sehr geholfen. und nein es ist nicht direkt eine hausaufgabe. es ist eine aufgabe an der uni. aber das anlegen der accounts ist nur ein kleiner teil des progs und da kam ich halt nciht weiter.

will überhaupt nciht das mir einer alles vorgibt, dann ist ja mein lernfaktor gleich null.

nochmals vielen dank und ich hoffe ich muss euch nicht noch einmal nerven 8)

mfg
eldios
 

SebiB90

Top Contributor
Gast hat gesagt.:
@SebiB90 : Du hast inhaltlich dasselbe wie ich gepostet. :)
Bevor du es mißverstehst, nein ich will dich nicht dumm anmachen.

Gruß
ups :oops:
hab den letzten satz mit dem vector überlesen, hast recht, hät ich mir sparen können.
hab nur auf den code geguckt und nur array gesehen
 

eldios

Mitglied
hi!
noch mal ich. hab das jetzt so gemacht.

Code:
class Account{
		String n_name;
		String v_name;
		int einzahlung;
		int kontonr;
		int b =0;
		
	}



public class bank {


	/**
	 * @param args
	 */
	
	public static void createAccount(String c, String d, int i){
		
		//int b=0;
		Account[] Kunde = new Account[2];
		Kunde[0].n_name = c;
		Kunde[0].v_name = d;
		Kunde[0].einzahlung = i;
		//Kunde[0].kontonr = b;
		System.out.println(Kunde[0].n_name);
		System.out.println(Kunde[0].v_name);
		System.out.println(Kunde[0].einzahlung);
		System.out.println(Kunde[0].kontonr);
		//b++;
		
	}
	
	//public static deletacount(){
		
	//}
	
	//public static depositcash(){
		
	//}
	
	//public static drawcash(){
		
	//}
	
	//public static transfer(){
		
	//}
	//public static balanceday(){
		
	//}
	
	//public static printaccount(){
		
	//}
	
	public static void main(String[] args) {
	
		
		createAccount("Mustermann", "Max", 11000 );
		createAccount( "Musterfrau", "Mia", 13700 );
		

	}

}
und bekomm dadurch nu folgende fehlermeldung:

Exception in thread "main" java.lang.NullPointerException
at bank.createAccount(bank.java:23)
at bank.main(bank.java:61)


woran liegt das jetzt genau?
 

Murray

Top Contributor
Du hast zwar das Array deklariert und intialisiert, nicht aber die Array-Elemente:

Code:
Account[] Kunde = new Account[2]; 
for ( int i=0; i<Kunde.length; i++) Kunde[i] = new Account();
 

eldios

Mitglied
ich bräuchte noch mal einen kleinen tip! wie bekomm ich das jetzt hin das er die daten nur an einer arraystelle speichert(momentan speicehrt er die daten ja im ganezn array also von 0 und 1!!

dann noch wie geht es das wenn der erste createaccount aufgerufen wurde und im array[0] gespeichert wurde, beim zweiten createaccount aufruf die daten im array[1] gespeichert weden??

irgendwie bekomm ich das nciht hin.
Code:
class Account{
		String n_name;
		String v_name;
		int einzahlung;
		int kontonr;
		
		
	}



public class bank {


	/**
	 * @param args
	 */
	
	public static void createAccount(String c, String d, int i){
		
		int k=0;
		Account[] Kunde = new Account[5];
		//for(int b=0; b<1; b++){
		if(Kunde[0] == null ){
			//for( ; k<Kunde.length; ++k){ 
			
				Kunde[0] = new Account();
				Kunde[0].n_name = c;
				Kunde[0].v_name = d;
				Kunde[0].einzahlung = i;
				Kunde[0].kontonr = 0;
				System.out.println(Kunde[0].n_name);
				System.out.println(Kunde[0].v_name);
				System.out.println(Kunde[0].einzahlung);
				System.out.println(Kunde[0].kontonr);
				//b++;
				
		
		}
		else if(Kunde[0] != null){
				//++k;
					Kunde[1] = new Account();
					Kunde[1].n_name = c;
					Kunde[1].v_name = d;
					Kunde[1].einzahlung = i;
					Kunde[1].kontonr = 1;
					System.out.println(Kunde[1].n_name);
					System.out.println(Kunde[1].v_name);
					System.out.println(Kunde[1].einzahlung);
					System.out.println(Kunde[1].kontonr);
		}
					}
	
	
	
	//public static deletacount(){
		
	//}
	
	//public static depositcash(){
		
	//}
	
	//public static drawcash(){
		
	//}
	
	//public static transfer(){
		
	//}
	//public static balanceday(){
		
	//}
	
	//public static printaccount(){
		
	//}
	
	public static void main(String[] args) {
		
		
		createAccount("Mustermann", "Max", 11000 );
		createAccount( "Musterfrau", "Mia", 13700 );
		

	}

}
 
B

Beni

Gast
Naja, der Array "Kunde" ist nur in einer lokalen Variable gespeichert, und wird gelöscht wenn die Methode "createAccount" verlassen wurde...

Code:
public static Account createAccount( String surename, String forename, int nr ){
  Account account = new Account();
  account.v_name = forename;
  account.n_name = surename;
  account.kontoNr = nr;
  return account; // << wichtig
}

public static void main( String[] args ){
  Account[] accounts = new Account[2];
  accounts[0] = createAccount( "Bla", "Max", 11000 );
  accounts[1] = createAccount( "Blupp", "Mia", 13700 );

  // und jetzt hast du hier 2 Instanzen von Account in dem Array "accounts"
}
 

eldios

Mitglied
hm ich glaub nciht!
die zahl bei
Code:
createAccount( "Blupp", "Mia", 13700 );
ist nicht die kontonr. die muss in der methode erst erstellt werden
 

SebiB90

Top Contributor
du musst den konten auch ne nr zuweisen
bei benis code ist die methode createAccount auch mit dem parameter int id aber der fehlt im aufruf in der main methode
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
T Konstruktor für eigene Klasse erstellen Java Basics - Anfänger-Themen 6
Amina556 Eigene Klasse definieren Java Basics - Anfänger-Themen 9
L Meine erste eigene Exception Klasse Java Basics - Anfänger-Themen 10
D Attribut Telefonnummer - eigene Klasse oder String Java Basics - Anfänger-Themen 13
S Eigene LinkedList Klasse Java Basics - Anfänger-Themen 4
H Klassen auf eigene Klasse zugreifen Java Basics - Anfänger-Themen 2
D Klassen Eigene Klasse für ArrayList Java Basics - Anfänger-Themen 6
B Klassen Eigene "non static" Klasse in Main verwenden! Java Basics - Anfänger-Themen 12
J Eigene Klasse für die Variablen? Java Basics - Anfänger-Themen 3
S Wann existiert eine Instanz (eigene Klasse) Java Basics - Anfänger-Themen 8
S Eigene Exception Klasse - fehlender Konstruktor mit String Java Basics - Anfänger-Themen 3
B eigene klasse in listen eintragen Java Basics - Anfänger-Themen 6
A Objekte in eigene Klasse auslagern Java Basics - Anfänger-Themen 2
Kenan89 ActionListener in eigene Klasse Java Basics - Anfänger-Themen 8
E Object in eigene Klasse umwandeln? Java Basics - Anfänger-Themen 7
F Klassen Eigene Klasse definieren Java Basics - Anfänger-Themen 4
T eigene Exception Klasse Java Basics - Anfänger-Themen 12
F Eigene Klasse für die Keys von HashMap Java Basics - Anfänger-Themen 5
G Eigene Klasse als Array, zugriff? Java Basics - Anfänger-Themen 2
S Eigene Stack Klasse Java Basics - Anfänger-Themen 26
W GUI als eigene Klasse oder in die Startklasse? Java Basics - Anfänger-Themen 21
H Buttonbefehle in eigene Klasse schreiben Java Basics - Anfänger-Themen 8
G Eigene Klasse für externe Befehle - Warten auf Prozesse Java Basics - Anfänger-Themen 6
nrg Eigene simple List-Klasse programmieren Java Basics - Anfänger-Themen 3
M eigene Property-Klasse Java Basics - Anfänger-Themen 2
L Aus einer Methode eine eigene Klasse machen - modular coden Java Basics - Anfänger-Themen 14
E Eigene Stack Klasse schreiben Java Basics - Anfänger-Themen 12
M Eigene Klasse mit "Enumeration"-Datentyp verknüpfe Java Basics - Anfänger-Themen 16
F Eigene Klasse für Events Java Basics - Anfänger-Themen 10
B eigene Klasse wird nicht im Hauptprogramm erkannt! Java Basics - Anfänger-Themen 4
U Eigene klasse schreiben Java Basics - Anfänger-Themen 13
A meine eigene IO Klasse Java Basics - Anfänger-Themen 3
L eigene Klasse für DB Java Basics - Anfänger-Themen 5
G Vererbung: Methoden die eigene Klasse zurückgeben Java Basics - Anfänger-Themen 8
B Panel mit Radiobuttons als eigene Klasse Java Basics - Anfänger-Themen 4
D Eigene Klasse als Import Java Basics - Anfänger-Themen 10
M eigene klasse definieren und verfügbar machen Java Basics - Anfänger-Themen 9
T Eigene Exception - ohne werfen abfangen Java Basics - Anfänger-Themen 2
T Datentypen Eigene Datentypen Java Basics - Anfänger-Themen 15
low_in_the_head Eigene Exception nutzen Java Basics - Anfänger-Themen 4
C Archiv für eigene Klassen Java Basics - Anfänger-Themen 9
B JUnit 4: Wie man die eigene Liste testen kann [TDD] Java Basics - Anfänger-Themen 46
C eigene Methoden erstellen (Instanzmethoden) Java Basics - Anfänger-Themen 7
I Eigene Java Tools Nutzung Java Basics - Anfänger-Themen 6
G eigene Bibliothek einbinden Java Basics - Anfänger-Themen 1
K Eigene Annotations, Pre-/Post-/Call-Method Java Basics - Anfänger-Themen 6
O Erste Schritte Eigene charAt(i) Methode schreiben Java Basics - Anfänger-Themen 10
D Methoden Eigene Methode um alle Ausgaben aufzurufen Java Basics - Anfänger-Themen 17
L Eigene Exception schreiben bei zu langem Array Java Basics - Anfänger-Themen 10
P Maven und eigene Jars Java Basics - Anfänger-Themen 4
J Algorithmus - Strings auf eigene Reihenfolge miteinander vergleichen Java Basics - Anfänger-Themen 4
R Interface Eigene Objekte in Listen sortieren mit Interface Comparable Java Basics - Anfänger-Themen 5
A Eigene Methoden entwicken Java Basics - Anfänger-Themen 3
F Klassen Eigene Exception Bedingungen festlegen Java Basics - Anfänger-Themen 2
H GSON-Bibliothek für eigene Programme benutzen Java Basics - Anfänger-Themen 2
N Eclipse - eigene Icons unter ClassPath Resource Java Basics - Anfänger-Themen 0
N Eigene Stream Methoden implementieren Java Basics - Anfänger-Themen 3
R eigene Graphikbedienelemente Java Basics - Anfänger-Themen 8
V Generics / eigene Liste Java Basics - Anfänger-Themen 4
T Eigene Bedingung in IF-Bedingung Java Basics - Anfänger-Themen 22
P Java 8 & Eigene Applets Java Basics - Anfänger-Themen 3
E Best Practice Exaktes Rechnen mit (Pseudo-)Rationalen/Realen Zahlen. Operations Zuweisung für (eigene) Klassen Java Basics - Anfänger-Themen 3
G eigene Bibliothek in Java importieren Java Basics - Anfänger-Themen 5
M Wann eigene implementierte HashCode Methode zwingend erforderlich? Java Basics - Anfänger-Themen 1
P Vererbung Eigene HashMap Variante Java Basics - Anfänger-Themen 2
P Eigene Knöpfe mit eigenem Listener Java Basics - Anfänger-Themen 5
T Muss ein Parametertest immer eine eigene Testklasse sein? Java Basics - Anfänger-Themen 3
B Multithreading und eigene Queue entwickeln Java Basics - Anfänger-Themen 3
O GUI: Eigene Fenster "Form"? Java Basics - Anfänger-Themen 13
F Eigene LinkedList - toString Java Basics - Anfänger-Themen 10
O Denkanstöße für eigene Konfigurations-Datei Java Basics - Anfänger-Themen 12
SexyPenny90 Wieso ist diese eigene Equals-Methode schlecht? Java Basics - Anfänger-Themen 17
C eigene Exception Java Basics - Anfänger-Themen 4
M externe JARs in die eigene JAR einbinden Java Basics - Anfänger-Themen 9
V Klassen import - einfaches Umleiten auf eigene Klassen? Java Basics - Anfänger-Themen 8
S [JavaFX 2.1] - Eigene Sprachauswahl? Java Basics - Anfänger-Themen 4
K Klassen Eigene Exception verwenden Java Basics - Anfänger-Themen 9
J eigene packages bzw klassen verwenden Java Basics - Anfänger-Themen 25
E Eigene Stackklasse Java Basics - Anfänger-Themen 7
B Eigene Exceptions entwerfen Java Basics - Anfänger-Themen 3
S Eigene Exception Schreiben und Welche Auslösen wie ? Java Basics - Anfänger-Themen 7
P eigene kleine Datenverwaltung Java Basics - Anfänger-Themen 5
N Eigene Methoden-> Werte übergeben Java Basics - Anfänger-Themen 5
U Klassen Eigene Klassen importieren Java Basics - Anfänger-Themen 13
S Eigene Klassen addieren Java Basics - Anfänger-Themen 3
B OOP Eigene Objekte in Arrays zusammenfassen Java Basics - Anfänger-Themen 3
E Eigene class datum Java Basics - Anfänger-Themen 2
G Eigene MessageBox kreieren Java Basics - Anfänger-Themen 9
I Erste Schritte Eigene Fehlermeldungen bei Exceptions Java Basics - Anfänger-Themen 19
S Eigene KeyEvent-Mask erstellen Java Basics - Anfänger-Themen 4
X Eigene Libary Java Basics - Anfänger-Themen 2
Crashbreaker Eigene Java-Programm ohne hilfe des CMD starten Java Basics - Anfänger-Themen 11
A Klassen Eigene Datenklasse - Strings mit fixer Länge Java Basics - Anfänger-Themen 2
G Shape um eigene Achse drehen Java Basics - Anfänger-Themen 2
P Vererbung Basisklasse soll eigene Methode benutzen Java Basics - Anfänger-Themen 38
J Eigene kleine Datenbank programmieren Java Basics - Anfänger-Themen 2
xehpuk Ordner "Eigene Bilder" ansteuern Java Basics - Anfänger-Themen 3
V Sonderzeichen als eigene "Operatoren" im JTextField Java Basics - Anfänger-Themen 4
D Eigene equals methode schreiben Java Basics - Anfänger-Themen 4
dataframe OOP Eigene typisierte Liste Java Basics - Anfänger-Themen 3

Ähnliche Java Themen

Neue Themen


Oben