|
JAVA班级管理系统(论文+系统)需求分析
1.功能需求
1).能够实现对班级学生基本资料的录入,包括学生的学号,姓名,性别,所学专业,家庭住址以及出生年月等。
2).能够实现对学生基本资料的修改。
3).根据学号对学生资料进行查询。
4).能够删除某些学生的资料。
二:总体设计
本班级管理系统共有6个java源文件。
类之间的主要关系如下图所示:
各主类的主要作用如下:
1).StudentManager.java
该java文件的类负责创建班级学生管理系统的主窗口。该类包含main方法,程序从该类开始执行。
2).StudentStituation.java
该文件的类负责创建班级学生管理系统的学生信息录入界面。
3).ModifySituation.java
该文件的类负责创建班级学生管理系统的学生基本信息修改界面。
4).Inquest.java
该文件的类负责创建班级学生管理系统的学生基本信息查询界面。
5).Delete.java
该文件的类负责创建班级学生管理系统的学生信息删除界面。
6).Student.java
负责创建存放学生信息的对象。
三:详细设计
1. 主类StudentManager.java
1).成员变量
主要成员变量 成员变量描述 | 变量类型 | 变量名称 | 基本信息录入界面 基本信息修改界面 基本信息查询界面 基本信息删除界面 菜单选项 存基本信息的散列表 存放散列表的文件 | StudentSituation ModifySituation Inquest Delete JMenuItem Hashtable File | 基本信息录入 基本信息修改 基本信息查询 基本信息删除 录入,修改,查询,删除 基本信息 file |
2).方法
主要方法 名称 | 功能 | 备注 | StudentManager actionPerformed main | 创建程序主窗口 处理ActionEvent事件 程序开始运行 | 构造方法 接口方法 |
3).代码
StudentManager.java
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.io.*;
import java.util.Hashtable;
public class StudentManagerextends JFrame implements ActionListener
{
StudentSituation 基本信息录入=null;
ModifySituation 基本信息修改=null;
Inquest 基本信息查询=null;
Delete 基本信息删除=null;
JMenuBar bar;
JMenu fileMenu;
JMenuItem 录入,修改,查询,删除,退出;
Container con=null;
Hashtable 基本信息=null;
File file=null;
CardLayout card=null;
JLabel label;
JPanel pCenter;
public StudentManager()
{
setTitle("欢迎进入班级管理系统");
录入=new JMenuItem("录入学生基本信息");
修改=new JMenuItem("修改学生基本信息");
查询=new JMenuItem("查询学生基本信息");
删除=new JMenuItem("删除学生基本信息");
退出=new JMenuItem("退出本系统");
退出.addActionListener(newActionListener()
{
public voidactionPerformed(ActionEvent event)
{
System.exit(0);
}
});
bar=new JMenuBar();
fileMenu=new JMenu("菜单选项");
fileMenu.add(录入);
fileMenu.addSeparator();
fileMenu.add(修改);
fileMenu.addSeparator();
fileMenu.add(查询);
fileMenu.addSeparator();
fileMenu.add(删除);
fileMenu.addSeparator();
fileMenu.addSeparator();
fileMenu.add(退出);
bar.add(fileMenu);
setJMenuBar(bar);
label=new JLabel("欢迎进入班级管理系统!",label.CENTER);
label.setFont(new Font("隶书",Font.BOLD,30));
label.setForeground(Color.blue);
基本信息=new Hashtable();
录入.addActionListener(this);
修改.addActionListener(this);
查询.addActionListener(this);
删除.addActionListener(this);
card=new CardLayout();
con=getContentPane();
pCenter=new JPanel();
pCenter.setLayout(card);
file=new File("学生基本信息.txt");
if(!file.exists())
{
try{
FileOutputStream out=newFileOutputStream(file);
ObjectOutputStreamobjectOut=newObjectOutputStream(out);
objectOut.writeObject(基本信息);
objectOut.close();
out.close();
}
catch(IOException e)
{
}
}
基本信息录入=new StudentSituation(file);
基本信息修改=new ModifySituation(file);
基本信息查询=new Inquest(this,file);
基本信息删除=new Delete(file);
pCenter.add("欢迎语界面",label);
pCenter.add("录入界面",基本信息录入);
pCenter.add("修改界面",基本信息修改);
pCenter.add("删除界面",基本信息删除);
con.add(pCenter,BorderLayout.CENTER);
con.validate();
addWindowListener(new WindowAdapter()
{ public voidwindowClosing(WindowEvent e)
{
System.exit(0);
}
});
setVisible(true);
|
|