java学习--学生成绩管理系统

1.主要功能:

(1).该系统有两个用户:教师用户、学生用户

(2).两个用户能够分别注册、登录、修改密码等功能

(3).教师用户能够添加学生、修改学生信息、删除学生、统计学生信息、查询学生信息

(4).学生用户能够查询学生信息

(5).学生用户的信息以及成绩都存储在文件中,学生用户、教师用户的用户名、密码也都存储在文件中

2.功能结构图:

1

3.模块以及类分析:

1516

4.问题描述及解决方法

4.1.1 问题描述

由于有许多的学生,不知道怎么把学生(不知道数量)存储起来,并且要写入到文件中、读取出来.

4.1.2 解决方案

使用java.util.ArrayList 类(可变数组类):创建一个Student类(实现Serializable接口)、把Student类当成一个ArrayList数组的一个元素,使得其能存储多个学生(不知道数量):

ArrayList<Studnet> al = new ArrayList<Studnet>()

使用ObjectInputStream、ObjectOutputStream中的readObject()方法、writeObject方法:

4.1.3解决结果

可以有效的添加学生人数,没有人数限制。

可以有效的把学生信息写入文件中、从文件中读取学生信息

4.2.问题描述:

clip_image001

由于自己最先使用代码编写界面,使用的GridLayout布局,把每一个按顺序的放在JPabel中,在把每一个JPanel放在JFrame中,界面看起来比较整洁:

但是这样出现一个问题,解释该界面中的JLabel、JButton等看起来比较小。

4.2.2.解决方案

使用NetBeans拖出来几个界面.

5.总结

1.在这次学习成绩管理系统中,自已首先拿到题目后不知道怎么做。首先在网上搜了一下,然后开始看他的源代码,由于是网页的缘故,看的不是好懂,所以自己又全部把他的源代码敲在MyEclipse上,然后运行。慢慢的理解其源代码。

2.再自己理解其源代码后,还是按照他的程序的结构,把自己想要的程序敲了出来。敲的过程中还是有许多的bug,一边看他的源代码、一边百度修改bug。最后初步写成程序。

3.在这次写程序的过程中,自己对于:java的GUI编程、java的IO流有了更深入的理解。

4.这是自己第一次算的上做一个小小的项目吧,自己在这个过程中还是收获挺大的,对编程还是有了一点更深入的了解。

原文地址:https://www.cnblogs.com/maying3010/p/5127739.html