java课程设计班级管理系统.docx

上传人:b****0 文档编号:8989376 上传时间:2023-05-16 格式:DOCX 页数:43 大小:74.14KB
下载 相关 举报
java课程设计班级管理系统.docx_第1页
第1页 / 共43页
java课程设计班级管理系统.docx_第2页
第2页 / 共43页
java课程设计班级管理系统.docx_第3页
第3页 / 共43页
java课程设计班级管理系统.docx_第4页
第4页 / 共43页
java课程设计班级管理系统.docx_第5页
第5页 / 共43页
java课程设计班级管理系统.docx_第6页
第6页 / 共43页
java课程设计班级管理系统.docx_第7页
第7页 / 共43页
java课程设计班级管理系统.docx_第8页
第8页 / 共43页
java课程设计班级管理系统.docx_第9页
第9页 / 共43页
java课程设计班级管理系统.docx_第10页
第10页 / 共43页
java课程设计班级管理系统.docx_第11页
第11页 / 共43页
java课程设计班级管理系统.docx_第12页
第12页 / 共43页
java课程设计班级管理系统.docx_第13页
第13页 / 共43页
java课程设计班级管理系统.docx_第14页
第14页 / 共43页
java课程设计班级管理系统.docx_第15页
第15页 / 共43页
java课程设计班级管理系统.docx_第16页
第16页 / 共43页
java课程设计班级管理系统.docx_第17页
第17页 / 共43页
java课程设计班级管理系统.docx_第18页
第18页 / 共43页
java课程设计班级管理系统.docx_第19页
第19页 / 共43页
java课程设计班级管理系统.docx_第20页
第20页 / 共43页
亲,该文档总共43页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

java课程设计班级管理系统.docx

《java课程设计班级管理系统.docx》由会员分享,可在线阅读,更多相关《java课程设计班级管理系统.docx(43页珍藏版)》请在冰点文库上搜索。

java课程设计班级管理系统.docx

java课程设计班级管理系统

 

Java课程设计

------简单的班级管理系统

 

学院:

船山学院

班级:

计算机029班

姓名:

陈强

学号:

 

2004-12-20

一:

需求分析

1.功能需求

1).能够实现对班级学生基本资料的录入,包括学生的学号,姓名,性别,所学专业,家庭住址以及出生年月等。

2).能够实现对学生基本资料的修改。

3).根据学号对学生资料进行查询。

4).能够删除某些学生的资料。

二:

总体设计

本班级管理系统共有6个java源文件。

类之间的主要关系如下图所示:

StudentManager(主类)

Delete

Student

StudentSituation

ModiifySituation

Inquest

各主类的主要作用如下:

1).

该java文件的类负责创建班级学生管理系统的主窗口。

该类包含main方法,程序从该类开始执行。

2).

该文件的类负责创建班级学生管理系统的学生信息录入界面。

3).

该文件的类负责创建班级学生管理系统的学生基本信息修改界面。

4).

该文件的类负责创建班级学生管理系统的学生基本信息查询界面。

5).

该文件的类负责创建班级学生管理系统的学生信息删除界面。

6).

负责创建存放学生信息的对象。

三:

详细设计

1.主类

1).成员变量

主要成员变量

成员变量描述

变量类型

变量名称

基本信息录入界面

基本信息修改界面

基本信息查询界面

基本信息删除界面

菜单选项

存基本信息的散列表

存放散列表的文件

StudentSituation

ModifySituation

Inquest

Delete

JMenuItem

Hashtable

File

基本信息录入

基本信息修改

基本信息查询

基本信息删除

录入,修改,查询,删除

基本信息

file

2).方法

主要方法

名称

功能

备注

StudentManager

actionPerformed

main

创建程序主窗口

处理ActionEvent事件

程序开始运行

构造方法

接口方法

3).代码

import.*;

import.*;

import.*;

importclassStudentManagerextendsJFrameimplementsActionListener

{

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)

{

(0);

}

});

bar=newJMenuBar();

fileMenu=newJMenu("菜单选项");

(录入);

();

(修改);

();

(查询);

();

(删除);

();

();

(退出);

(fileMenu);

setJMenuBar(bar);

label=newJLabel("欢迎进入班级管理系统!

",;

(newFont("隶书",,30));

;

基本信息=newHashtable();

录入.addActionListener(this);

修改.addActionListener(this);

查询.addActionListener(this);

删除.addActionListener(this);

card=newCardLayout();

con=getContentPane();

pCenter=newJPanel();

(card);

file=newFile("学生基本信息.txt");

if(!

())

{

try{

FileOutputStreamout=newFileOutputStream(file);

ObjectOutputStreamobjectOut=newObjectOutputStream(out);

(基本信息);

();

();

}

catch(IOExceptione)

{

}

}

基本信息录入=newStudentSituation(file);

基本信息修改=newModifySituation(file);

基本信息查询=newInquest(this,file);

基本信息删除=newDelete(file);

("欢迎语界面",label);

("录入界面",基本信息录入);

("修改界面",基本信息修改);

("删除界面",基本信息删除);

(pCenter,;

();

addWindowListener(newWindowAdapter()

{publicvoidwindowClosing(WindowEvente)

{

(0);

}

});

setVisible(true);

setBounds(100,50,420,380);

validate();

}

publicvoidactionPerformed(ActionEvente)

{

if()==录入)

{

(pCenter,"录入界面");

}

elseif()==修改)

{

(pCenter,"修改界面");

}

elseif()==查询)

{

基本信息查询.setVisible(true);

}

elseif()==删除)

{

(pCenter,"删除界面");

}

}

publicstaticvoidmain(Stringargs[])

{

newStudentManager();

}

}

2.录入界面

1).成员变量

主要成员变量属性

描述

变量类型

变量名称

存放“学生”对象的散列表

输入学生基本信息的文本

存放学生信息的对象

Hashtable

JTextField

Student

基本信息表

学号,姓名,所学专业,家庭住址,出生

学生

2).方法

主要方法

名称

功能

备注

StudentSituation

actionPerformed

创建学生信息录入界面

处理ActionEvent事件

构造方法

接口方法

3).代码

import.*;

import.*;

import.*;

import.*;

publicclassStudentSituationextendsJPanelimplementsActionListener

{

Hashtable基本信息表=null;

JTextField学号,姓名,所学专业,家庭住址,出生;

JRadioButton男,女;

Student学生=null;

ButtonGroupgroup=null;

JButton录入,重置;

FileInputStreaminOne=null;

ObjectInputStreaminTwo=null;

FileOutputStreamoutOne=null;

ObjectOutputStreamoutTwo=null;

Filefile=null;

publicStudentSituation(Filefile)

{

=file;

学号=newJTextField(10);

姓名=newJTextField(10);

所学专业=newJTextField(10);

家庭住址=newJTextField(10);

出生=newJTextField(10);

group=newButtonGroup();

男=newJRadioButton("男",true);

女=newJRadioButton("女",false);

(男);

(女);

录入=newJButton("录入");

重置=newJButton("重置");

录入.addActionListener(this);

重置.addActionListener(this);

Boxbox1=();

(newJLabel("学号:

",);

(学号);

Boxbox2=();

(newJLabel("姓名:

",);

(姓名);

Boxbox3=();

(newJLabel("性别:

",);

(男);

(女);

Boxbox4=();

(newJLabel("所学专业:

",);

(所学专业);

Boxbox5=();

(newJLabel("家庭住址:

",);

(家庭住址);

Boxbox6=();

(newJLabel("出生:

",);

(出生);

BoxboxH=();

(box1);

(box2);

(box3);

(box4);

(box5);

(box6);

());

JPanelpCenter=newJPanel();

(boxH);

setLayout(newBorderLayout());

add(pCenter,;

JPanelpSouth=newJPanel();

(录入);

(重置);

add(pSouth,;

validate();

}

publicvoidactionPerformed(ActionEvente)

{

if()==录入)

{

Stringnumber="";

number=学号.getText();

if()>0)

{

try{

inOne=newFileInputStream(file);

inTwo=newObjectInputStream(inOne);

基本信息表=(Hashtable)();

();

();

}

catch(Exceptionee)

{

}

if(基本信息表.containsKey(number))

{

Stringwarning="该生基本信息已存在,请到修改页面修改!

";

(this,warning,警告",;

}

else

{

Stringm="基本信息将被录入!

";

intok=(this,m,"确认",,;

if(ok==

{

Stringname=姓名.getText();

Stringdiscipling=所学专业.getText();

Stringgrade=家庭住址.getText();

Stringborth=出生.getText();

Stringsex=null;

if(男.isSelected())

{

sex=男.getText();

}

else

{

sex=女.getText();

}

学生=newStudent();

学生.setNumber(number);

学生.setName(name);

学生.setDiscipling(discipling);

学生.setGrade(grade);

学生.setBorth(borth);

学生.setSex(sex);

try{

outOne=newFileOutputStream(file);

outTwo=newObjectOutputStream(outOne);

基本信息表.put(number,学生);

(基本信息表);

();

();

学号.setText(null);

姓名.setText(null);

所学专业.setText(null);

家庭住址.setText(null);

出生.setText(null);

}

catch(Exceptionee)

{

}

}

}

}

else

{

Stringwarning="必须要输入学号!

";

(this,warning,"警告",;

}

}

if()==重置)

{

学号.setText(null);

姓名.setText(null);

所学专业.setText(null);

家庭住址.setText(null);

出生.setText(null);

}

}

}

3.查询界面

1).成员变量

主要成员变量属性

描述

变量类型

变量名称

存放“学生”对象的散表

显示学生基本信息的文本

Hashtable

JTextField

基本信息表

学号,姓名,所学专业,家庭住址,出生

2).方法

主要方法

名称

功能

备注

Inquest

actionPerformed

创建查询界面

处理ActionEvent事件

构造方法

接口方法

3).代码

import.*;

import.*;

import.*;

import.*;

publicclassInquestextendsJDialogimplementsActionListener

{

Hashtable基本信息表=null;

JTextField学号,姓名,所学专业,家庭住址,出生;

JRadioButton男,女;

JButton查询;

ButtonGroupgroup=null;

FileInputStreaminOne=null;

ObjectInputStreaminTwo=null;

Filefile=null;

publicInquest(JFramef,Filefile)

{

super(f,"查询对话框",false);

=file;

学号=newJTextField(10);

查询=newJButton("查询");

学号.addActionListener(this);

查询.addActionListener(this);

姓名=newJTextField(10);

姓名.setEditable(false);

所学专业=newJTextField(10);

所学专业.setEditable(false);

家庭住址=newJTextField(10);

家庭住址.setEditable(false);

出生=newJTextField(10);

出生.setEditable(false);

男=newJRadioButton("男",false);

女=newJRadioButton("女",false);

group=newButtonGroup();

(男);

(女);

Boxbox1=();

(newJLabel("输入要查询的学号:

",);

(学号);

(查询);

Boxbox2=();

(newJLabel("姓名:

",);

(姓名);

Boxbox3=();

(newJLabel("性别:

",);

(男);

(女);

Boxbox4=();

(newJLabel("所学专业:

",);

(所学专业);

Boxbox5=();

(newJLabel("家庭住址:

",);

(家庭住址);

Boxbox6=();

(newJLabel("出生:

",);

(出生);

BoxboxH=();

(box1);

(box2);

(box3);

(box4);

(box5);

(box6);

());

JPanelpCenter=newJPanel();

(boxH);

Containercon=getContentPane();

(pCenter,;

();

setVisible(false);

setBounds(100,200,360,270);

addWindowListener(newWindowAdapter()

{publicvoidwindowClosing(WindowEvente)

{

setVisible(false);

}

});

}

publicvoidactionPerformed(ActionEvente)

{

姓名.setText(null);

所学专业.setText(null);

家庭住址.setText(null);

出生.setText(null);

if()==查询||()==学号)

{

Stringnumber="";

number=学号.getText();

if()>0)

{

try{

inOne=newFileInputStream(file);

inTwo=newObjectInputStream(inOne);

基本信息表=(Hashtable)();

();

();

}

catch(Exceptionee)

{

}

if(基本信息表.containsKey(number))

{

Studentstu=(Student)基本信息表.get(number);

姓名.setText());

所学专业.setText());

家庭住址.setText());

出生.setText());

if().equals("男"))

{

男.setSelected(true);

}

else

{

女.setSelected(true);

}

}

else

{

Stringwarning="该学号不存在!

";

(this,warning,"警告",;

}

}

else

{

Stringwarning="必须要输入学号!

";

(this,warning,"警告",;

}

}

}

}

3.修改界面

1).成员变量

主要成员变量

描述

变量类型

变量名称

存放“学生”对象的散列表

输入学生基本信息的文本条

Hashtabel

JTextField

基本信息表

学号,姓名,所学专业,家庭住址,出生

2).方法

主要方法

名称

功能

备注

ModifySituation

actionPerform

创建学生信息修改界面

处理ActionEvent事件

构造方法

接口方法

3).代码

import.*;

import.*;

import.*;

import.*;

publicclassModifySituationextendsJPanelimplementsActionListener

{

Hashtable基本信息表=null;

JTextField学号,姓名,所学专业,家庭住址,出生;

JRadioButton男,女;

ButtonGroupgroup=null;

JButton开始修改,录入修改,重置;

FileInputStreaminOne=null;

ObjectInputStreaminTwo=null;

FileOutputStreamoutOne=null;

ObjectOutputStreamoutTwo=null;

Filefile=null;

publicModifySituation(Filefile)

{

=file;

学号=newJTextField(10);

姓名=newJTextField(10);

所学专业=newJTextField(10);

家庭住址=newJTextField(10);

出生=newJTextField(10);

group=newButtonGroup();

男=newJRadioButton("男",true);

女=newJRadioButton("女",false);

(男);

(女);

开始修改=newJButton("开始修改");

录入修改=newJButton("录入修改");

录入修改.setEnabled(false);

重置=newJButton("重置");

学号.addActionListener(this);

开始修改.addActionListener(this);

录入修改.addActionListener(this);

重置.addActionListener(this);

Boxbox1=();

(newJLabel("输入要修改信息的学号:

",);

(学号);

(开始修改);

Boxbox2=();

(newJLabel("(新)姓名:

",);

(姓名);

Boxbox3=();

(newJLabel("(新)性别:

",);

(男);

(女);

Boxbox4=();

(newJLabel("(新)所学专业:

",);

(所学专业);

Boxbox5=();

(newJLabel("(新)家庭住址:

",);

(家庭住址);

Boxbox6=();

(newJLabel("(新)出生:

",);

(出生

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > IT计算机 > 电脑基础知识

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2