【老白学 Java】项目演练 - Quizzes #3

项目演练 - Quizzes #3

【老白学 Java】项目演练 - Quizzes #3_第1张图片
文章来源:《Head First Java》修炼感悟。

本篇文章继续实现卡片引擎的代码,与编辑器一样也是由 GUI 展现给用户。 允许从磁盘上读取数据文件然后生成答题卡,用户点击「下一个」按钮就可以显示下个题目内容。

一、QuizCardEngine 类结构

我们从类结构开始,然后在按顺序逐个方法实现,最后编译运行。

/**
 * 文件:QuizCardEngine.java
 * 描述:加载数据文件,然后生成卡片并展示。
 */
public class QuizCardEngine {
   
	public void init() {
   
		// TODO:
	}
	private void load(File file) {
   
		// TODO:
	}
	private void make(String token) {
   
		// TODO:
	}
	private void showNext() {
   
		// TODO:
	}
	class OpenCardListener implements ActionListener {
   
		public void actionPerformed(ActionEvent e) {
   
			// TODO:
		}
	}
	class NextCardListener implements ActionListener {
   
		public void actionPerformed(ActionEvent e) {
   
			// TODO:
		}
	}
	public static void main(String[] args) {
   
		// TODO:
	}
}

二、功能模块代码

1. 变量声明

private JFrame frame;				// 主窗口框架,所有组件的基板
private JTextArea display;			// 用来显示题目或答案等信息的文本域组件
private JButton nextButton;			// 用来显示下一组内容的按钮组件
private QuizCard currentCard;		// 用来保存当前显示在界面中的卡片
private ArrayList<QuizCard> cards;	// 载入的所有卡片都放在这里

private int currentCardIndex;		// 用来记录当前显示的卡片索引值
private boolean isShowAnswer;		// 用来标识当前显示的是题目还是答案

2. QuizCardEngine()

这是类的构造方法,通常做法是把一些变量的初始化工作放在这里执行。 比如这里初始化了一个空的卡片数据列表:

 
 

你可能感兴趣的:(《Head,First,Java》,java,开发语言)