java编程问题 实现 做问答题时,

2024-11-22 21:19:17
推荐回答(1个)
回答1:

我的思路是:
你可以把每一道题目抽象成一个类,比如叫Question,类里面有几个field,包括题目内容、选项内容、用户答案,初始化的时候,用户答案这一field初始化为空(可以用int类型处理这个field,在用户没有选择的时候,初始化为0,然后按照A:1,B:2,C:3,D:4的对应,比如用户选A,就赋值为1,依次类推)。
上面这个类可以看做是后台的逻辑(也就是MVC架构的M——Model层),下面你只要再创建一个用来显示Question类的类——比如叫QuestionView——就可以了(也就是MVC架构里的V——View层)
具体这个View类可以继承JPanel,然后里面嵌几个JCheckBox,以及JTextField(用来显示题目和选项内容)什么的,每次初始化这个类的时候,都检查一下Question类里用户答案这个field,然后把相应的选项对应的JCheckBox打勾就可以了。
其实无论是第一次显示某个题目,还是按上一题,下一题显示某个题目,都是将QuestionView类初始化,然后add到面板上(或者直接JFrame里),所以只要在QuestionView的初始化里面把逻辑写好了,就没问题了。