Objektorientierung

Status
Nicht offen für weitere Antworten.

mcminimilk

Neues Mitglied
Hi, ich habe mir zur Aufgabe gesetzt ein Konto in verschiedene Klassen einzuteilen um OO besser zu verstehn, leider verstehe ich eins noch nicht ganz ertmal der Code:

Konto Klasse:
[HIGHLIGHT="Java"]package konto;

public class Konto {
private double betrag=0;

public Konto(){
betrag = 0;
}

public Konto(double anfangsbetrag){
betrag = anfangsbetrag;
}

public double getBetrag(){
return betrag;
}

public void setBetrag(double betrag){
this.betrag = betrag;
}

}
[/HIGHLIGHT]

KontoMethoden Klasse:

[HIGHLIGHT="Java"]package konto;

public class KontoMethoden implements KontoMethodenI {

public Konto konto = new Konto();

public void abheben(double betrag) {
if(betrag>this.konto.getBetrag() || betrag<=0)
return;
this.konto.getBetrag() -= betrag; // so gehts natürlich nicht

}


public void einzahlen(double betrag) {
//noch programmieren

}


public void kontostand() {
System.out.println("Ihr Kontostand beträgt: "+this.konto.getBetrag()+" Euro.");

}



}
[/HIGHLIGHT]

Interface für KontoMethoden:

[HIGHLIGHT="Java"]package konto;

public interface KontoMethodenI {

public void abheben(double betrag);
public void einzahlen(double betrag);
public void kontostand();

}
[/HIGHLIGHT]

Main Klasse:

[HIGHLIGHT="Java"]package konto;

public class Main {


public static void main(String[] args) {
Konto meins = new Konto(500.);
meins.kontostand();

}

}
[/HIGHLIGHT]


Meine Frage ist nun wie kann ich in der KontoMethoden Klasse auf die Membervariable betrag zugreifen? Muss ich die Variable "default" oder gar public setzen, weil ich ja nur über die get Methode an den betrag komme?

Und zweitens wieso sagt mir Eclipse in der Main Klasse, dass "The method kontostand() is undefined for the type Konto", wenn ich die Methode auf einem konto aufrufen will?

Ich hoffe das ist nicht zu trivial und mir kann jmd. helfen ^^
 
Zuletzt bearbeitet:

tfa

Top Contributor
Hi, ich habe mir zur Aufgabe gesetzt ein Konto in verschiedene Klassen einzuteilen um OO besser zu verstehn,
Warum?
Klassen kapseln Verhalten und Daten. Warum möchtest du die Kontomethoden aus der Konto-Klasse ausgliedern? Das gehört zusammen.
Du könntest noch weitere Klassen modellieren und die in Beziehung zueinander setzen, um dich mit OO vertraut zu machen. Z.B. Kunde, Depot, Transaktion, Dauerauftrag etc.
Am besten schreibst du auf, was in deinem Modell alles vorkommt. Dann sind die Hauptworte Klassen, die Verben Methoden und die Adjektive Interfaces - grob gesprochen.
 
M

maki

Gast
Denke er hat die Aufageb falsch verstanden und sollte die klassen Konto und Betrag erstellen, Konto als soz. Entity (nicht die Persistenzkiste) und Betrag als immutable ValueObject, sauberes Design welches Seiteneffekte vermeidet.
 

mcminimilk

Neues Mitglied
Warum?
Klassen kapseln Verhalten und Daten. Warum möchtest du die Kontomethoden aus der Konto-Klasse ausgliedern? Das gehört zusammen.
Du könntest noch weitere Klassen modellieren und die in Beziehung zueinander setzen, um dich mit OO vertraut zu machen. Z.B. Kunde, Depot, Transaktion, Dauerauftrag etc.
Am besten schreibst du auf, was in deinem Modell alles vorkommt. Dann sind die Hauptworte Klassen, die Verben Methoden und die Adjektive Interfaces - grob gesprochen.

Danke, danke, irgendwie hatte ich die Datenkapselung nie wirklich verstanden, wie man sieht, jetzt schon.

@maki: ne, es gab keine Aufgabenstellung ich hatte mir das selbst überlegt aber einfach das Prinzip des information hiding missverstanden.

P.S. ich bin beeindruckt wie schnell die Antworten kamen ;)
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
Kerstininer Vererbung Hilfe beim lernen von Objektorientierung für eine Klausur Java Basics - Anfänger-Themen 10
L Einführung Objektorientierung Java Basics - Anfänger-Themen 8
L Einstieg Objektorientierung Java Basics - Anfänger-Themen 10
H Wie geht eigentlich Objektorientierung? Java Basics - Anfänger-Themen 14
L Objektorientierung Java Basics - Anfänger-Themen 6
B Objektorientierung Java Basics - Anfänger-Themen 1
M Array und Objektorientierung? - TicTacToe Spiel Java Basics - Anfänger-Themen 43
T Objektorientierung-Kurze Frage Java Basics - Anfänger-Themen 5
L Hilfe! Objektorientierung Java Basics - Anfänger-Themen 3
S OOP Zusammenhang von Objektorientierung und Ausnahmebehandlungen Java Basics - Anfänger-Themen 6
C Objektorientierung? Java Basics - Anfänger-Themen 5
G Designfrage/Objektorientierung Java Basics - Anfänger-Themen 19
S Methoden Aufgabe zu ""Methoden" und "Objektorientierung" Java Basics - Anfänger-Themen 3
B OOP Programm zur Verdeutlichung von Objektorientierung Java Basics - Anfänger-Themen 7
T Initialisierungen der einzelnen Klassen - Objektorientierung Java Basics - Anfänger-Themen 4
B Objektorientierung Java Basics - Anfänger-Themen 2
W Einstieg Objektorientierung Java Basics - Anfänger-Themen 4
X Objektorientierung Einführung Java Basics - Anfänger-Themen 2
A Objektorientierung Klassen Java Basics - Anfänger-Themen 4
D Objektorientierung / Polymorphismus Java Basics - Anfänger-Themen 8
Spin Objektorientierung . Konzept Java Basics - Anfänger-Themen 4
M Objektorientierung - wie macht man's richtig? Java Basics - Anfänger-Themen 3
R ObjektOrientierung Java Basics - Anfänger-Themen 18
D Objektorientierung ? Java Basics - Anfänger-Themen 4
D Objektorientierung Listen Java Basics - Anfänger-Themen 2
J objektorientierung und uml Java Basics - Anfänger-Themen 5
D Objektorientierung - wie konsequent sollte man sein ? Java Basics - Anfänger-Themen 30
D Zuerst Objektorientierung oder GUI ? Java Basics - Anfänger-Themen 19

Ähnliche Java Themen

Neue Themen


Oben