我正在尝试使用传递给notifyObservers
方法的对象的属性,但我似乎找不到访问它们的方法。我只能传入一个字符串,但我希望将更多选项传递给观察者。
这是设置示例;
public class UpdateInfo {
public String data;
public int debug = 0;
}
public class RXTXComms extends Observable {
UpdateInfo info = new UpdateInfo();
public void sendToBoard(String s) {
.......
UpdateInfo.data = "test";
UpdateInfo.debug = 1;
stChanged();
notifyObservers(info);
}
}
public class Program implements Observer {
public void update(Observable obj, Object arg) {
String msg = ""; // Message to display on GUI
if (arg instanceof UpdateInfo) {
//Print out the message and Debug int onto GUI...but how do I access them from `arg`
}
}
}
如果我将类型arg
设为 be UpdateInfo
,那么我会收到一个编译器错误,即我的类Program
不是抽象的......
这不是一个诚实、恰当的问题吗?