你有
public class Question
和
public class MultipleChoice extends Question
和
public class SurveyQuestions
SurveyQuestions有
private static List<Question> q = new ArrayList<Question>();
在主要内容中,您不断添加问题以及所有问题都由列表组成。
完成后,您想迭代列表
for (Question q : SurveyQuestions.getInstance().getListOfQuestions())
问题:“q”应该是什么类型才能访问Question和MultipleChoice?
答案 0 :(得分:3)
如果通过“访问”来表示“访问方法” - 您不能将其作为MultipleChoice
,因为某些问题可能不是这样。所以它必须是Question
,然后您可以if(q instanceof MultipleChoice)
答案 1 :(得分:1)
你应该Question
。
你无法将MultipleChoice
作为普通Question
MultipleChoice
...而是MultipleChoice
是 Question
。因此Question
可以代表两种类型。