【发布时间】:2015-03-20 17:51:58
【问题描述】:
我正在使用向量来存储抽象超类的对象。我需要访问向量中每个对象的派生子类中的方法。我将使用instanceof 来区分每个对象属于哪个子类。
我没有写抽象类的权限。
目前我得到的编译错误是:
Error: cannot find symbol symbol: method <mySubclassMethod>() location: class <MyAbstractClass>
访问向量中每个对象的子类方法最有效的方法是什么?
【问题讨论】:
-
如果您可以发布您尝试过的代码,可能很容易提供最佳解决方案。
-
您尝试通过添加 instanceOf 检查并调用仅存在于每个子类中的不同方法来尝试调用集合中对象上的方法的方式存在一个根本缺陷。在我看来,你可以发布另一个问题,要求一个好的设计来解决你的问题,然后完全放弃这个问题,因为即使你设法得到了这个问题的答案,它也不是一个好的编码方式。
标签: java object inheritance vector abstract-class