Java 模拟考试系统(Swing + IO)

  • 编程语言:Java 14.0.1
  • IDE:intelliJ IDEA 2020.1.2

使用了MVC分层架构思想,并且仅涉及JavaSE内容

  • 功能:登录 + 考试
  • UI:Swing
  • 数据库:以文件充当数据库的功能,使用集合实现缓存机制

单例模式效果的两种实现

  1. 懒汉式(延迟加载)
  2. IOC控制权反转实现生命周期托管

重点在于考试功能的设计:

  1. 题库中有若干个题目,存储在文件中,一行一个。每一行就是一个String,使用特殊符号来分割题干(题目、选项)、答案和图片路径。

  2. 需要一个方法生成考卷,在题库中随机抽取若干个题目,使用ArrayList集合存储考卷。

    在其中需要做到无序不重复,可以使用set

    1. HashSet,决定于hashCode、equals方法
    2. TreeSet,决定于compareTo方法
  3. 在考试窗口上展示题目,对于选项按钮、切换按钮、提交按钮的事件绑定设计

  4. 添加倒计时功能,使用线程处理时间倒计时问题

展示

Java 模拟考试系统(Swing + IO)_第1张图片
Java 模拟考试系统(Swing + IO)_第2张图片

编辑器的编码设置

idea编辑器 --> File --> Settings --> Editor --> File Encodings
Java 模拟考试系统(Swing + IO)_第3张图片
这个 Java demo 中涉及到使用 idea 编辑器创建文件、读取文件;有关编码问题,请参考上图。

完整代码获取

  • 代码:github
  • 如果你会使用github,可以看一下我的commit哦,功能逐步实现,并且分功能实现commit

你可能感兴趣的:(#,Java案例,java)