抽象类及其子类

时间:2015-10-27 21:20:39

标签: java vector abstract

我有一个抽象类Question,还有一堆子类:EssayQuestionTrueFalseQuestion,依此类推。他们每个人都有自己的(有时是唯一的)变量和方法。调查是不同类型问题的组合,因此要创建和保存它,我使用Vector<Question>

当我尝试“解压缩”这样的向量时,麻烦就开始了,每个项目都被简单地视为Question的一个实例,并且不允许我使用每个子类具有的方法。

例如,我创建一个真/假问题并将其添加到我的载体

    TFQuestion first = new TFQuestion("some text");
    Vector<Question> v = new Vector<Question>();
    v.add(0, first);

说,TFQuestiongetPrompt()方法,但抽象类Question没有。

v.get(0).getPrompt() 不存在。但是v.get(0).getClass()会返回TFQuestion的实例。

0 个答案:

没有答案