我有以下内容:
abstract class A extends Class C (abstract class C extends D)
private String name="";
public void setFff(double val) {
double old = fff.getAvg();
fff.update(val);
ListIterator<Observer> it = fffListeners.listIterator();
String ss;
while (it.hasNext()) {
ss = name + this.toString();
it.next().update("fff", fff.getValue(), fff.getAvg(), ss);
}
}
class B extends D implements Observable
private String name="";
public void notifyObservers() {
for(Observer observer:fffListeners){
v=fff.getValue();
m=fff.getAvg();
observer.update("fff", v, m, (name+this.getName()));
}
}
interface Observer
:
void update(String nn, double bbb, double aaa, String nameThraed);
abstract class E implements Observer
class G extends E
更新如下
public void update(String string, double v, double m, String s) {
if ((B.getClass == "G")
&& string.equals("fff")&& (s.equals("B"))) {
this.fffList.add(m);
System.out.println("List of fff :" + fffList);
}
myMethod(fffList);
}
我希望获得m
的全部价值,并在收到fffList
的通知时将主题放入列表E
。我怎么能这样做?
答案 0 :(得分:0)
扩展您的界面:
void update(Object sender, String nn, double bbb, double aaa, String nameThraed);
在您的特殊情况下,您可以检查发件人是否是您的E类实例。
if(sender instanceof E){
...
}
希望这会对你有所帮助。请重构您的参数:)