Hallo,
habe ein Problem mit eienr aktuellen Aufgabenstellung die wir fertig machen müssen.
In der Aufgabe geht es darum drei voneinander abgeleitete Klassen Basic, BasicPlusLimit und Advanced zu erstellen mit dem jeweils passenden Konstruktor, get()- und set()-Methoden und einer ausgabe()-Methode. Das Hauptprogramm soll als Array von drei Basisklassenreferenzen je ein Objekt der drei Klassen erzeugen. Die Ausgabe von Teilinformationen, die schon in einer Elternklasse vorhanden sind, soll durch Ausnutzung von deren Methode ausgabe() erfolgen.
Ausgegeben soll folgendes werden:
Inhaber: Meier1
Kartennummer: 2345 3250 1234 5432
Gültig bis: 11/2012
---------------------------------
Inhaber: Meier2
Kartennummer: 1234 3250 2345 9876
Gültig bis: 5/2013
Kreditlimit: 3000.0
---------------------------------
Inhaber: Meier3
Kartennummer: 3456 3250 4567 8912
Gültig bis: 7/2014
Kreditlimit: 5000.0
Umsätze:
245.5 1000.0 75.25
---------------------------------
Bei mir wird aber folgendes ausgegeben:
Inhaber: Meier1
Kartennummer: 2345 3250 1234 5432
Gültig bis: 11/2012
---------------------------------
Kreditlimit: 0.0
Inhaber: Meier2
Kartennummer: 1234 3250 2345 9876
Gültig bis: 5/2013
---------------------------------
Kreditlimit: 3000.0
Inhaber: Meier3
Kartennummer: 3456 3250 4567 8912
Gültig bis: 7/2014
---------------------------------
Kreditlimit: 5000.0
Umsätze: null
Wäre super wenn mir jmd. erklären könnte wo mein Fehler liegt und wie ich das ändern kann, damit ich die richtige Ausgabe bekomme.
Mein Quellcode:
habe ein Problem mit eienr aktuellen Aufgabenstellung die wir fertig machen müssen.
In der Aufgabe geht es darum drei voneinander abgeleitete Klassen Basic, BasicPlusLimit und Advanced zu erstellen mit dem jeweils passenden Konstruktor, get()- und set()-Methoden und einer ausgabe()-Methode. Das Hauptprogramm soll als Array von drei Basisklassenreferenzen je ein Objekt der drei Klassen erzeugen. Die Ausgabe von Teilinformationen, die schon in einer Elternklasse vorhanden sind, soll durch Ausnutzung von deren Methode ausgabe() erfolgen.
Ausgegeben soll folgendes werden:
Inhaber: Meier1
Kartennummer: 2345 3250 1234 5432
Gültig bis: 11/2012
---------------------------------
Inhaber: Meier2
Kartennummer: 1234 3250 2345 9876
Gültig bis: 5/2013
Kreditlimit: 3000.0
---------------------------------
Inhaber: Meier3
Kartennummer: 3456 3250 4567 8912
Gültig bis: 7/2014
Kreditlimit: 5000.0
Umsätze:
245.5 1000.0 75.25
---------------------------------
Bei mir wird aber folgendes ausgegeben:
Inhaber: Meier1
Kartennummer: 2345 3250 1234 5432
Gültig bis: 11/2012
---------------------------------
Kreditlimit: 0.0
Inhaber: Meier2
Kartennummer: 1234 3250 2345 9876
Gültig bis: 5/2013
---------------------------------
Kreditlimit: 3000.0
Inhaber: Meier3
Kartennummer: 3456 3250 4567 8912
Gültig bis: 7/2014
---------------------------------
Kreditlimit: 5000.0
Umsätze: null
Wäre super wenn mir jmd. erklären könnte wo mein Fehler liegt und wie ich das ändern kann, damit ich die richtige Ausgabe bekomme.
Mein Quellcode:
Java:
class Basic
{
public String inhaber;
public String kartennummer;
public String gueltigkeit;
public Basic(String name, String kid, String datum)
{
setInhaber(name);
setKartennummer(kid);
setGueltigkeit(datum);
ausgabe();
}
// Get-Methoden der Klasse Basic
public String getInhaber()
{
return inhaber;
}
public String getKartennummer()
{
return kartennummer;
}
public String getGueltigkeit()
{
return gueltigkeit;
}
// Set-Methoden der Klasse Basic
public void setInhaber(String name)
{
this.inhaber = name;
}
public void setKartennummer(String nummer)
{
this.kartennummer = nummer;
}
public void setGueltigkeit(String datum)
{
this.gueltigkeit = datum;
}
public void ausgabe()
{
System.out.println ("Inhaber: " +getInhaber());
System.out.println ("Kartennummer: " +getKartennummer());
System.out.println ("Gültigkeit: " +getGueltigkeit());
System.out.println ("-------------------------------------");
}
}
class BasicPlusLimit extends Basic
{
public float kreditlimit;
public BasicPlusLimit(String name, String kid, String datum, float limit)
{
super(name, kid, datum);
setKreditlimit(limit);
super.ausgabe();
ausgabe();
}
// Get-Methoden der Klasse BasicPlusLimit
public float getKreditlimit()
{
return this.kreditlimit;
}
// Set-Methoden der Klasse BasicPlusLimit
public void setKreditlimit(float k)
{
this.kreditlimit = k;
}
public void ausgabe()
{
System.out.println ("Kreditlimit: " +getKreditlimit());
}
}
class Advanced extends BasicPlusLimit
{
public String umsaetze;
public Advanced(String name, String kid, String datum, float limit, String umsatz)
{
super(name, kid, datum, limit);
super.ausgabe();
setUmsaetze(umsatz);
ausgabe();
}
// Get-Methoden der Klasse Advanced
public String getUmsaetze()
{
return this.umsaetze;
}
// Set-Methoden der Klasse Advanced
public void setUmsaetze(String u)
{
this.umsaetze = u;
}
public void ausgabe()
{
System.out.println ("Umsätze: " +getUmsaetze());
}
}
class klasse {
private static Basic[] ku;
public static void main(String[] args)
{
ku = new Basic[3];
ku[0] = new Basic("Meier1","2345 3250 1234 5432","11/2012");
ku[1] = new BasicPlusLimit("Meier2","1234 3250 2345 9876","05/2013",3000.0f);
ku[2] = new Advanced("Meier3","3456 3250 4567 8912","07/2013",5000.0f,"245.5 1000.0 75.25");
}
}
Zuletzt bearbeitet von einem Moderator: