Hallo,
ich soll eine Methode schreiben, die als Parameter ein Feld unbekannter Länge übergeben wird, welches Objekte aus meinen Klassen Reise, Urlaubsreise und Tagesreise aufnehmen kann. Z.B soll ich alle Daten der Objekte ausgeben, deren Reiseziel Barcelona ist. Falls diese nicht belegt sind soll eine Meldung kommen das die Indexnr nicht belegt ist. Ich hab leider nur keinen Ansatz dafür, wie ich diese Methode schreiben soll. Ich hoffe mir kann jemand auf die Sprünge helfen
ich soll eine Methode schreiben, die als Parameter ein Feld unbekannter Länge übergeben wird, welches Objekte aus meinen Klassen Reise, Urlaubsreise und Tagesreise aufnehmen kann. Z.B soll ich alle Daten der Objekte ausgeben, deren Reiseziel Barcelona ist. Falls diese nicht belegt sind soll eine Meldung kommen das die Indexnr nicht belegt ist. Ich hab leider nur keinen Ansatz dafür, wie ich diese Methode schreiben soll. Ich hoffe mir kann jemand auf die Sprünge helfen
Java:
public class Reise
{
protected String reiseziel;
protected double preis;
protected int reisedauer;
public static double DEFAULTPREIS = 100.00;
public static int DEFAULTDAUER = 7;
public Reise(String reiseziel, double preis, int reisedauer)
{
this.reiseziel = reiseziel;
setPreis(preis);
setReisedauer(reisedauer);
}
public String getReiseziel()
{
return reiseziel;
}
public void setReiseziel(String reiseziel)
{
this.reiseziel = reiseziel;
}
public double getPreis()
{
return preis;
}
public void setPreis(double preis)
{
if(preis > 0)
this.preis = preis;
else
this.preis = DEFAULTPREIS;
}
public int getReisedauer()
{
return reisedauer;
}
public void setReisedauer(int reisedauer) {
if(reisedauer > 0)
this.reisedauer = reisedauer;
else
this.reisedauer = DEFAULTDAUER;
}
@Override
public String toString()
{
return "Reiseziel: " + this.reiseziel + "\nPreis: " +
this.preis + "\nDauer: " + this.reisedauer;
}
}
Java:
public class UrlaubsReise extends Reise {
String unterkunft;
String anreise;
String essen;
public UrlaubsReise(String reiseziel, double preis, int dauer, String unterkunft, String anreise, String essen) {
super(reiseziel, preis, dauer);
this.unterkunft = unterkunft;
this.anreise = anreise;
this.essen = essen;
}
public String getUnterkunft() {
return unterkunft;
}
public void setUnterkunft(String unterkunft) {
this.unterkunft = unterkunft;
}
public String getAnreise() {
return anreise;
}
public void setAnreise(String anreise) {
this.anreise = anreise;
}
public String getEssen() {
return essen;
}
public void setEssen(String essen) {
this.essen = essen;
}
@Override public String toString()
{
return super.toString() + "Unterkunft" + getUnterkunft() + "\nAnreise" + getAnreise() + "\nEssen" + getEssen();
}
}
Java:
public class TagesReise extends Reise {
int abfahrt;
int ankunft;
public static int DEFAULTDAUER = 1; //TAG
public TagesReise(String reiseziel, double preis, int dauer, int abfahrt, int ankunft) {
super(reiseziel, preis, dauer);
this.abfahrt = abfahrt;
this.ankunft = ankunft;
}
public int getAbfahrt() {
return abfahrt;
}
public void setAbfahrt(int abfahrt) {
this.abfahrt = abfahrt;
}
public int getAnkunft() {
return ankunft;
}
public void setAnkunft(int ankunft) {
this.ankunft = ankunft;
}
@Override public String toString()
{
return super.toString() + "Abfahrt" + getAbfahrt() + "\nAnkunft" + getAnkunft();
}
}
Java:
public class ReiseTest {
public static void main(String[] args) {
Reise[] nixWieWeg = new Reise[80];
nixWieWeg[0] = new UrlaubsReise("Barcelona", 200.50, 4, "Marina", "BUS", "ALLINKLUSIVE");
nixWieWeg[1] = new UrlaubsReise("Schottland", 399.99, 7, "Whisky", "FLUGZEUG", "HALBPENSION");
nixWieWeg[2] = new TagesReise("Burg Schottland", 50, 1, 12, 16);
nixWieWeg[3] = new TagesReise("Küste Barcelona", 30.99, 1, 10, 12);
}
}