简单学生信息管理系统

  • 格式:doc
  • 大小:33.00 KB
  • 文档页数:9

下载文档原格式

  / 9
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

——综合性程序设计

题目:简单学生信息管理系统(序列化版)班级:

姓名:

学号:

实验目的:

1.综合运用输入、输出的知识,用序列化方法保存、读入数组内容。

2.设计实现一个简单的信息管理系统。

实验内容:

编写能够满足如下条件的程序,分两次四个课时完成

1.声明Student类,该类实现Serializable接口以表明该类

可以进行序列化。该类有姓名、学号、math、os、java用

来存放对应的成绩,在构造方法中进行姓名、学号、课程

成绩的赋值。Override有Object继承来的tostring方法

已便友好格式显示自己的属性;

2.建立一个类,利用数组来存储多个Student,写完一个方

法,在main中写一段测试代码,运行以保证目前所做工

作的正确性,正确后再写其他代码。有以下方法:

1)add(Student stu):增加新的学生,人数满时显示人满或是new一个更长的数组,把现有的Student复制到

新数组

2)dispAll():可以显示所有的学生信息(测试add是否正确)

3)findById(long id):可以按照学号来查找,然后显示符合条件的学生信息,查无此人的话显示错误信息。

4)findByName(string name):可以按照姓名来查找,然后显示符合条件的学生信息,查无此人的话显示错误

信息。(判断姓名是否相等使用string类的

equalsIgnoreCase方法)

5)delBy Id(long id): 可以按照id来删除学生信息,然后显示找到该人,若查无此人的话显示错误信息。

6)save():利用ObjectOutputStream 来把数组写入文件中,需要考虑在什么时候调用该方法。

7)load():利用ObjectIntputStream 来进行反序列化,得到以前保存的内容,注意要考虑以前未保存内容

的情况,可返回错误信息。

3.在控制台显示一个菜单,并实现相应的功能。菜单如下: 1显示所有学生信息 2按学号查找 3 按姓名查找

4 按学号删除

5 保存

6 读入

7 退出

请输入数字(1-7):

程序代码

Import .*;

Import .*;

class Stu implements Serilizable{

private String name;

private long id;

private double os,java,math;

}

public Student()

{

}

public Student(int id, int age, int score, String name) {

= id;

= os;

= java;

= name;

=math;

}

public long getId()

{

return id;

}

public void setId(long id)

{

= id;

}

public int getOs()

{

return os;

}

public void setOs(int os)

{

= os;

}

public int getJava()

{

return java;

}

public void setJava(int java)

{

= java;

}

public int getMath()

{

return Math;

}

public void setMath(int math)

{

= math;

}

public String getName()

{

return name;

}

public void setName(String name)

{

= name;

}

@Override

public String toString()

{

return "学号:" + id + " 姓名:" + name + " os:" + os+ " math:" + math + "java" + java;

}

}

o==no)

{

}

if(stus[i].no!=no&&i==

{

"无该生信息!");

}

}

}

public void findByName(Student[] stus)

{

String name="";

"请输入姓名:");

name=();

for(int i=0;i<;i++)

{

if(stus[i].name)==true)

{

if(stus[i].name)==false&&i==

{

"无该生信息!");

}

}

}

public void delById(Student[] stus)throws Exception {

int no=0,i=0;

"请输入学号:");

no=();

for(i=0;i<;i++)

{

if(stus[i].no==no)

{

stus[i]=null;save(stus);

"删除成功!");

break;

}

if(stus[i].no!=no&&i==