# Hausaufgabe zu Person/ Konto



## Gast (8. Nov 2009)

hay jungs ich hab hier ne übung von mir ich komm aber an manchen stellen nicht weiter... wäre nice wenn ihr mir da helfen könntet 


   Klasse Kunde


```
public class Person {

                           // Anfang Attribute
  private String name;
  private String vorname;
  private meinKonto Konto;  
 
 a = Kontostand;
 b = abgehobener Betrag;
 c = eingezahlter Betrag;

// Ende Attribute

  public Person(String name, String vorname) {
     this.name = name;
     this.vorname = vorname;
  }

// Anfang Methoden
  public String getName() {
    return name;
  }

  public String getVorname() {
    return vorname;
  }
  

  public void eröffneKonto( meinKonto){
    meinKonto = Konto;  // Assoziation aufbauen
  }
  
  public void Kontonummer(int nr:){
    meinKonto.Kontonummer(nr:);
  }
  
  public void hebeab(meinKonto){
    meinKonto = Konto();
  float a = 1000;             ???wie mach ich das? t.t
  float b = x;			
  float d = endbetrag;
  System.out.println(a -- "/" + b + " = " c);

  }
  
  public void zahleEin(int "b"){
    mein.Konto= Konto();
  float a = 1000;
  float c =  x;(die zahl die eingegeben wird)

System.out.println(a ++ "/" + b + " = " c);

}

  
  public String toString(){
```


----------



## Gast (8. Nov 2009)

achso und hier die aufgabe xD :
Die Software soll Kunden und Konten verwalten.
Ein Bankkunde (kurz: Kunde) hat einen Namen und einen Vornamen.
Er eröffnet ein Konto. Dieses Konto hat eine Kontonummer und einen Kontostand. Der Kunde besitzt dieses Konto. Jeder Kunde erhält bei Neueröffnung eines Kontos eine Prämie von 10 Euro, die sofort auf dem Konto gutgeschrieben wird.
Der Kunde kann einen Geldbetrag auf das Konto einzahlen und einen Geldbetrag abheben.


dafür braucht man ja 3 klassen das problem von mir liegt nur bei der klasse Kunde


----------



## SlaterB (8. Nov 2009)

was genau ist denn jetzt die Frage, nur 'geht nicht' geht nicht, vom Titel ganz zu schweigen


----------



## Gast (8. Nov 2009)

die stellen wo ich nicht weiterkommen stehen ja im quelltext.Wenn ihr sonst fehler seht markierts mir bitte oder ändert es


----------



## SlaterB (8. Nov 2009)

> float a = 1000;             ???wie mach ich das? t.t

das ist doch ein korrekter Befehl, was gibts da zu fragen?

ja, ich lese nicht erst die Aufgabe durch, programmiere das für mich fertig, vergleiche es Zeile für Zeile mit deinem Programm usw.,
man kann doch ordentliche Fragen stellen z.B. 'wie hebe ich 5 Euro vom Konto ab' oder worum gehts?
was drei float-Zahlen mit hebeab(meinKonto) zu tun habe verstehe ich eh nicht,

und überhaupt bitte erst Grundlagen,
eine Methode braucht doch Parameter mit Typ + Namen,
hebeab(meinKonto) macht keinen Sinn
 public void Kontonummer(int nr: ){
  public void zahleEin(int "b"){
gibts auch nicht

klingt zwar nervig, aber ohne Grundlagen und einen Plan geht gar nix


----------



## Gast (8. Nov 2009)

hm ok wie würdest du jetz zb die abbuchung schreiben?


----------



## Gast (8. Nov 2009)

und warum soll hebeab( mein konto ) keinen sinn machen? 
von welchem konto soll ich den sonst abbuchen?


----------



## SlaterB (8. Nov 2009)

es geht um die Syntax

setName(String) macht keinen Sinn
setName(name) auch nicht
setName(String name) ist dagegen akzeptabel

und wenn meinKonto schon ein Klassenattribut ist, dann ist es der Klasse/ dem Objekt eh bekannt, 
dann muss man es nicht als Parameter übergeben, der Aufrufer kennt es hoffentlich sowieso nicht


```
public void hebeab(int geld){
  this.meinKonto.hebeAb(geld);
}
```
wäre vielleicht sinnvoll, hängt davon ab, was die Konto-Klasse so alles anbietet, 
die Person hat normalerweise nicht viel mit dem Abheben zu tun


----------



## Gast (8. Nov 2009)

achso stimmt wenn du also dein geld abhebst dann hast du damit nichts zu tun ?
aber zu der konto nr die hab ich jetz auch in die klasse konto geklatscht xD 
aber sollte ich abheben nicht doch lieber beim kunden lassen?
und beim konto ne extra buchung aufrufen?


----------



## SlaterB (8. Nov 2009)

wie gesagt, hängt alles vom Konto ab,
letztendlich muss ja wenigstens ein Kontostand oder geändert werden, wie das zu machen ist, darüber entscheidet doch wohl erstens mal das Konto,

wenn dir

```
public void hebeab(int geld){
  meinKonto.setKontoStand(meinKonto.getKontoStand()-geld);
}
```
lieber ist, nur zu,

oder auch

```
public void hebeab(int geld){
  meinKonto.führeBuchungAus(new Buchung(geld));
}
```

Ideen gibts viele, interessant wäre wirklich wie die Konto-Klasse aussieht,
(was nicht heißen soll dass ich jetzt beliebig weiter mitmache, jetzt kommt eh Transformers  )


----------

