Hallo,
ich habe ein Problem mit Listener und Vererbung. Ich habe eine abstrakte Klasse mit Eigenschaften und PropertyChangeSupport. hier ein Ausschnitt
Ich habe nun eine weiter Klasse, die von dieser erbt
Leider wird nun scheinbar die firePropertyChange der abstrakten Klasse nicht aufgerufen, sondern nur jene von der abgeleiteten Klasse. Wenn ich die Methode addPropertyChange nur in der Basisklasse einfüge, dann ist es halt genau umgekehrt. Falls ich sie bei beiden einfüge dann ist es das gleiche, als wenn ich sie nur in der abgeleiteten Klasse einfüge.
Wie kann ich es bewerkstelligen, dass ich in der WorkWorkerKlasse die firePropertyChange Ereignisse der Basisklasse verwalten kann.
danke
Arnold
PS: ich bin neu in Java und deshalb ist mir dies mit PropertChange noch nicht ganz klar
ich habe ein Problem mit Listener und Vererbung. Ich habe eine abstrakte Klasse mit Eigenschaften und PropertyChangeSupport. hier ein Ausschnitt
Java:
public abstract class Resource {
private PropertyChangeSupport propertyChangeSupport = new PropertyChangeSupport(this);
...
public void setHours(float hours) {
float oldHours = this.hours;
this.hours = hours;
propertyChangeSupport.firePropertyChange("hours", oldHours, hours);
}
}
Java:
public class WorkWorker extends Resource implements Serializable {
private PropertyChangeSupport propertyChangeSupport = new PropertyChangeSupport(this);
....
public void setCostHour(float costHour) {
float oldCostHour = this.costHour;
this.costHour = costHour;
propertyChangeSupport.firePropertyChange("costHour", oldCostHour, costHour);
}
/**
* Add PropertyChangeListener.
*
* @param listener
*/
public void addPropertyChangeListener(PropertyChangeListener listener) {
propertyChangeSupport.addPropertyChangeListener(listener);
}
/**
* Remove PropertyChangeListener.
*
* @param listener
*/
public void removePropertyChangeListener(PropertyChangeListener listener) {
propertyChangeSupport.removePropertyChangeListener(listener);
}
Wie kann ich es bewerkstelligen, dass ich in der WorkWorkerKlasse die firePropertyChange Ereignisse der Basisklasse verwalten kann.
danke
Arnold
PS: ich bin neu in Java und deshalb ist mir dies mit PropertChange noch nicht ganz klar