我认为我的问题不是很清楚:)这里是我的问题(更详细):Java:如何从不同类实例化的不同对象中调用具有相同名称的方法?
我有几个对象(可以说objA,objB,objC等)不同的类(可以分别说ClassA,ClassB,ClassC ...)。这些对象A,B,C,...调用同一个对象(我们称之为jsonConnector,JsonConnector类的实例),然后我希望这个jsonConnector调用它的对象的updateUI()方法已经被创造了。
代码在我ClassX(ClassA的,ClassB的,等...)类:
JsonConnector jsonConnector = new JsonConnector(this);
构造我JsonConnector类:
private Object callingObject;
public JsonConnector(Object aCallingObject) {
callingObject = aCallingObject
}
某处在我JsonConnector类,我想要做的:
aCallingObject.updateUI();
但我有一个编译错误“方法updateUI()未定义类型对象”
我可以这样做:
String callingClassName = callingObject.getClass().getSimpleName();
if(callingClassName == "ClassA")
{
((ClassA)aCallingObject).updateUI();
}
else if(callingClassName == "ClassB")
{
((ClassB)aCallingObject).updateUI();
}
else if...
但我不想要 '的if else' 语句来写100!
有人知道我该怎么办?
谢谢!
感谢您的回答!它像一个魅力。如果我想要访问一个在不同classA,classB,...对象中具有不同值的int变量,那该怎么办?例如,如果我想获得updater.classIntValue? (classIntValue是类A,B ...的实例int变量)谢谢。 – 2013-05-03 13:41:42
@Regis_AG您应该可以将该方法添加到您的界面中。'updater.getImportantInteger()' – 2013-05-03 18:11:52