java课程设计班级管理系统.docx
- 文档编号:2930753
- 上传时间:2022-11-16
- 格式:DOCX
- 页数:38
- 大小:85.52KB
java课程设计班级管理系统.docx
《java课程设计班级管理系统.docx》由会员分享,可在线阅读,更多相关《java课程设计班级管理系统.docx(38页珍藏版)》请在冰豆网上搜索。
java课程设计班级管理系统
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
importjava.awt.*;
importjava.awt.event.*;
importjavax.swing.*;
importjava.io.*;
importjava.util.Hashtable;
publicclassStudentManagerextendsJFrameimplementsActionListener
{
StudentSituation基本信息录入=null;
ModifySituation基本信息修改=null;
Inquest基本信息查询=null;
Delete基本信息删除=null;
JMenuBarbar;
JMenufileMenu;
JMenuItem录入,修改,查询,删除,退出;
Containercon=null;
Hashtable基本信息=null;
Filefile=null;
CardLayoutcard=null;
JLabellabel;
JPanelpCenter;
publicStudentManager()
{
setTitle("欢迎进入班级管理系统");
录入=newJMenuItem("录入学生基本信息");
修改=newJMenuItem("修改学生基本信息");
查询=newJMenuItem("查询学生基本信息");
删除=newJMenuItem("删除学生基本信息");
退出=newJMenuItem("退出本系统");
退出.addActionListener(newActionListener()
{
publicvoidactionPerformed(ActionEventevent)
{
System.exit(0);
}
});
bar=newJMenuBar();
fileMenu=newJMenu("菜单选项");
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=newJLabel("欢迎进入班级管理系统!
",label.CENTER);
label.setFont(newFont("隶书",Font.BOLD,30));
label.setForeground(Color.blue);
基本信息=newHashtable();
录入.addActionListener(this);
修改.addActionListener(this);
查询.addActionListener(this);
删除.addActionListener(this);
card=newCardLayout();
con=getContentPane();
pCenter=newJPanel();
pCenter.setLayout(card);
file=newFile("学生基本信息.txt");
if(!
file.exists())
{
try{
FileOutputStreamout=newFileOutputStream(file);
ObjectOutputStreamobjectOut=newObjectOutputStream(out);
objectOut.writeObject(基本信息);
objectOut.close();
out.close();
}
catch(IOExceptione)
{
}
}
基本信息录入=newStudentSituation(file);
基本信息修改=newModifySituation(file);
基本信息查询=newInquest(this,file);
基本信息删除=newDelete(file);
pCenter.add("欢迎语界面",label);
pCenter.add("录入界面",基本信息录入);
pCenter.add("修改界面",基本信息修改);
pCenter.add("删除界面",基本信息删除);
con.add(pCenter,BorderLayout.CENTER);
con.validate();
addWindowListener(newWindowAdapter()
{publicvoidwindowClosing(WindowEvente)
{
System.exit(0);
}
});
setVisible(true);
setBounds(100,50,420,380);
validate();
}
publicvoidactionPerformed(ActionEvente)
{
if(e.getSource()==录入)
{
card.show(pCenter,"录入界面");
}
elseif(e.getSource()==修改)
{
card.show(pCenter,"修改界面");
}
elseif(e.getSource()==查询)
{
基本信息查询.setVisible(true);
}
elseif(e.getSource()==删除)
{
card.show(pCenter,"删除界面");
}
}
publicstaticvoidmain(Stringargs[])
{
newStudentManager();
}
}
2.录入界面
1).成员变量
主要成员变量属性
描述
变量类型
变量名称
存放“学生”对象的散列表
输入学生基本信息的文本
存放学生信息的对象
Hashtable
JTextField
Student
基本信息表
学号,姓名,所学专业,家庭住址,出生
学生
2).方法
主要方法
名称
功能
备注
StudentSituation
actionPerformed
创建学生信息录入界面
处理ActionEvent事件
构造方法
接口方法
3).代码
StudentSituation.java
importjava.awt.*;
importjava.awt.event.*;
importjavax.swing.*;
importjava.io.*;
importjava.util.*;
publicclassStudentSituationextendsJPanelimplementsActionListener
{
Hashtable基本信息表=null;
JTextField学号,姓名,所学专业,家庭住址,出生;
JRadioButton男,女;
Student学生=null;
ButtonGroupgroup=null;
JButton录入,重置;
FileInputStreaminOne=null;
ObjectInputStreaminTwo=null;
FileOutputStreamoutOne=null;
ObjectOutputStreamoutTwo=null;
Filefile=null;
publicStudentSituation(Filefile)
{
this.file=file;
学号=newJTextField(10);
姓名=newJTextField(10);
所学专业=newJTextField(10);
家庭住址=newJTextField(10);
出生=newJTextField(10);
group=newButtonGroup();
男=newJRadioButton("男",true);
女=newJRadioButton("女",false);
group.add(男);
group.add(女);
录入=newJButton("录入");
重置=newJButton("重置");
录入.addActionListener(this);
重置.addActionListener(this);
Boxbox1=Box.createHorizontalBox();
box1.add(newJLabel("学号:
",JLabel.CENTER));
box1.add(学号);
Boxbox2=Box.createHorizontalBox();
box2.
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- java 课程设计 班级 管理 系统