Hallo zusammen,
ich sitze an einem Problem was die Vererbung angeht momentan fest. Ich habe 3 Klassen: PalletManager, Pallet sowie Flüssigkeiten.
Flüssigkeiten erbt von der Klasse Pallet.
Die Klasse Flüssigkeiten welche von Pallet erbt:
Okay hier ist meine Frage: Wie kann ich in meiner Pallet Klasse (genauer in der Methode get Text auf meine Eigenschaften aus der Klasse Flüssigkeiten (Preis und Dichte) zugreifen, sodass wenn ich in meiner Main Klasse ein neues Pallet Objekt erstelle und den Konstruktor aus Flüsigkeiten aufrufe diese Werte mir dann auch mit der Methode getText aufrufen kann.
Vielen Dank fürs lesen und eure Hilfe!
ich sitze an einem Problem was die Vererbung angeht momentan fest. Ich habe 3 Klassen: PalletManager, Pallet sowie Flüssigkeiten.
Flüssigkeiten erbt von der Klasse Pallet.
Java:
package main.goods;
public class Pallet {
private String description = "";
private int id;
private int width;
private int depth;
protected int heigth;
private boolean cooling;
private long incoming;
private int outgoing;
private static int nextid = 1;
/**
* Creates a pallet from given values
* @param description - describes the content
* @param width - width of the pallet
* @param depth - depth of the pallet
* @param height - height of the pallet
* @param cooling - true, if the pallet requires cooling
* @param duration - estimated duration of stocking in days
*/
public Pallet(String description, int width, int depth, int height, boolean cooling, int duration) {
this.id = nextid++;
this.description = description;
this.width = width;
this.depth = depth;
this.heigth = height;
this.cooling = cooling;
this.incoming = System.currentTimeMillis();
this.outgoing = (int) this.incoming + (duration * 24 * 60 * 60 * 1000);
}
/**
* Generates a human-readable string with basic information.
* @return basic information about the pallet
*/
public String getText() {
StringBuffer result = new StringBuffer("[" + id + "] " + description + "(" + width + "x" + depth + "x" + heigth + ")");
//todo: append weight and total value
return result.toString();
}
public String getDescription() {return description;}
public int getId() {return id;}
public int getWidth() {return width;}
public int getDepth() {return depth;}
public int getHeigth() {return heigth;}
public boolean isCooling() {return cooling;}
public long getIncoming() {return incoming;}
public int getOutgoing() {return outgoing;}
}
Die Klasse Flüssigkeiten welche von Pallet erbt:
Java:
package main;
import main.goods.Pallet;
public class Flüssigkeiten extends Pallet {
public int auslass = 100;
public static double Dichte;
public double Preis;
private double KemlerZahl;
private double UnNummer;
public double getDichte() {return 729 * Dichte * (auslass/100);}
public double getPreis() {return 729 * Preis * (auslass/100);}
public void setDichte(double dichte) {
Dichte = dichte;
}
public void setPreis(double preis) {
Preis = preis;
}
public String getString () {return super.getText() + Dichte + Preis;}
public Flüssigkeiten (String description, boolean cooling, double Preis, int Lagerdauer, double Dichte, double KemlerZahl, double UnNummer) {
super(description, 90, 90, 90, cooling, Lagerdauer);
this.Dichte = 729 * Dichte * (auslass/100);
this.Preis = 729 * Preis * (auslass/100);
this.KemlerZahl = KemlerZahl;
this.UnNummer = UnNummer;
}
}
Okay hier ist meine Frage: Wie kann ich in meiner Pallet Klasse (genauer in der Methode get Text auf meine Eigenschaften aus der Klasse Flüssigkeiten (Preis und Dichte) zugreifen, sodass wenn ich in meiner Main Klasse ein neues Pallet Objekt erstelle und den Konstruktor aus Flüsigkeiten aufrufe diese Werte mir dann auch mit der Methode getText aufrufen kann.
Vielen Dank fürs lesen und eure Hilfe!