ImageVerifierCode 换一换
格式:DOCX , 页数:14 ,大小:220.33KB ,
资源ID:14274927      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-14274927.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(简单学生信息管理系统.docx)为本站会员(b****5)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

简单学生信息管理系统.docx

1、简单学生信息管理系统简单学生信息管理系统 综合性程序设计 题目:简单学生信息管理系统(序列化版)班级:姓名: 学号:实验目的:1综合运用输入、输出的知识,用序列化方法保存、读入数组内容。2设计实现一个简单的信息管理系统。实验内容: 编写能够满足如下条件的程序,分两次四个课时完成 1.声明Student类,该类实现Serializable接口以表明该类可以进行序列化。该类有姓名、学号、math、os、java用来存放对应的成绩,在构造方法中进行姓名、学号、课程成绩的赋值。Override有Object继承来的tostring方法已便友好格式显示自己的属性;2.建立一个类,利用数组来存储多个Stu

2、dent,写完一个方法,在main中写一段测试代码,运行以保证目前所做工作的正确性,正确后再写其他代码。有以下方法:1)add(Student stu):增加新的学生,人数满时显示人满或是new一个更长的数组,把现有的Student复制到新数组2)dispAll():可以显示所有的学生信息(测试add是否正确)3)findById(long id):可以按照学号来查找,然后显示符合条件的学生信息,查无此人的话显示错误信息。4)findByName(string name):可以按照姓名来查找,然后显示符合条件的学生信息,查无此人的话显示错误信息。(判断姓名是否相等使用string类的equal

3、sIgnoreCase方法)5)delBy Id(long id): 可以按照id来删除学生信息,然后显示找到该人,若查无此人的话显示错误信息。6)save():利用ObjectOutputStream 来把数组写入文件中,需要考虑在什么时候调用该方法。7)load():利用ObjectIntputStream 来进行反序列化,得到以前保存的内容,注意要考虑以前未保存内容的情况,可返回错误信息。3.在控制台显示一个菜单,并实现相应的功能。菜单如下: 1显示所有学生信息 2按学号查找 3 按姓名查找 4 按学号删除 5 保存 6 读入 7 退出 请输入数字(1-7):程序代码Import jav

4、a.io.*;Import java.util.*; 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) this.id = id; this.os = os; this.java = java; this.name = name; this.math=math; public long getId()

5、return id; public void setId(long id) this.id = id; public int getOs() return os; public void setOs(int os) this.os = os; public int getJava() return java; public void setJava(int java) this.java = java; public int getMath() return Math; public void setMath(int math) this.math = math; public String

6、getName() return name; public void setName(String name) this.name = name; Override public String toString() return 学号: + id + 姓名: + name + os: + os+ math: + math + java + java; /Object类public class Object private static Scanner scanner=new Scanner(System.in); public void add(Student stus)throws Exce

7、ption Student s=new Studentstus.length+1; for(int i=0;is.length-1;i+)si=stusi; System.out.print(请输入要添加的学生信息:n+姓名:); String name=scanner.next(); System.out.print(学号:);long no=scanner.nextInt(); System.out.print(os成绩:);double cscore0=scanner.nextDouble(); System.out.print(java成绩:);double cscore1=scann

8、er.nextDouble(); System.out.print(math成绩:);double cscore2=scanner.nextDouble(); ss.length-1=new Student(name,no,cscore0,cscore1,cscore2);save(s); System.out.println(添加成功!); public void dispAll(Student stus) System.out.println(现有Student信息为:); for(Student stu:stus) System.out.println(stu); public void

9、 save(Student stus)throws Exception ObjectOutputStream objOut=new ObjectOutputStream(new FileOutputStream(E:STU.txt); objOut.writeInt(stus.length); for(Student stu:stus) objOut.writeObject(stu); objOut.close(); public Student read()throws Exception ObjectInputStream objIn=new ObjectInputStream(new F

10、ileInputStream(E:STU.txt); int num=objIn.readInt(); Student stus=new Studentnum; for(int i=0;inum;i+) stusi=(Student)objIn.readObject(); objIn.close(); return stus; public void findById(Student stus) int no=0,i=0; System.out.print(请输入学号:);no=scanner.nextInt(); for(i=0;istus.length;i+) if(stusi.no=no

11、)System.out.println(stusi);break; if(stusi.no!=no&i=stus.length-1)System.out.println(无该生信息!); public void findByName(Student stus) String name=; System.out.print(请输入姓名:);name=scanner.next(); for(int i=0;istus.length;i+) if(name.equalsIgnoreCase(stusi.name)=true)System.out.println(stusi);break; if(na

12、me.equalsIgnoreCase(stusi.name)=false&i=stus.length-1)System.out.println(无该生信息!); public void delById(Student stus)throws Exception int no=0,i=0; System.out.print(请输入学号:);no=scanner.nextInt(); for(i=0;istus.length;i+) if(stusi.no=no)System.out.println(stusi); stusi=null;save(stus); System.out.printl

13、n(删除成功!); break; if(stusi.no!=no&i=stus.length-1)System.out.println(无该生信息!); public static void main(String args)throws Exception Object demo=new Object(); Student stus=new Student(zhang,1,90,90,98),new Student(wang,2,80,80,89),new Student(li,3,70,70,79); System.out.print(请输入操作的编号:);System.out.print

14、(n); int choice=0; do System.out.println(1 添加 2 显示所有学生信息 3 按学号查找 4 按姓名查找 5 按学号删除 6 保存 7 读入 0 退出 请输入数字(1-7): ); choice=scanner.nextInt(); switch(choice) case 1: demo.add(demo.read();break; case 2: demo.dispAll(demo.read();break; case 3: demo.findById(demo.read();break; case 4: demo.findByName(demo.re

15、ad();break; case 5: demo.delById(demo.read();break; case 6: demo.save(stus);break; case 7: demo.read(stus);break; case 0: break; default:System.out.println(Error!); while(choice!=0); 实验结果1 添加 2 显示所有学生信息 3 按学号查找 4 按姓名查找 5 按学号删除 6 保存 7 读入 0 退出请输入数字(1-7):1请输入要添加的学生信息:姓名:kim学号:0110 os成绩:66 java成绩: 77mat

16、h成绩:88添加成功!1 添加 2 显示所有学生信息 3 按学号查找 4 按姓名查找 5 按学号删除 6 保存 7 读入 0 退出请输入数字(1-7):1请输入要添加的学生信息:姓名:lina学号:0122os成绩:96java成绩: 83math成绩:72添加成功!1 添加 2 显示所有学生信息 3 按学号查找 4 按姓名查找 5 按学号删除 6 保存 7 读入 0 退出请输入数字(1-7):1请输入要添加的学生信息:姓名:joe学号:0136os成绩:69java成绩: 83math成绩:66添加成功!1 添加 2 显示所有学生信息 3 按学号查找 4 按姓名查找 5 按学号删除 6 保存

17、 7 读入 0 退出请输入数字(1-7):2现有Student信息为:学号:0110姓名:kim os:66 math:88 java:77学号:0122姓名:lina os:96 math:72 java:83学号:0136姓名:joe os:69 math:66 java:831 添加 2 显示所有学生信息 3 按学号查找 4 按姓名查找 5 按学号删除 6 保存 7 读入 0 退出请输入数字(1-7):61 添加 2 显示所有学生信息 3 按学号查找 4 按姓名查找 5 按学号删除 6 保存 7 读入 0 退出请输入数字(1-7):4请输入姓名:lim无该生信息!1 添加 2 显示所有学

18、生信息 3 按学号查找 4 按姓名查找 5 按学号删除 6 保存 7 读入 0 退出请输入数字(1-7):3请输入学号:0122学号:0122姓名:lina os:96 math:72 java:831 添加 2 显示所有学生信息 3 按学号查找 4 按姓名查找 5 按学号删除 6 保存 7 读入 0 退出请输入数字(1-7):4请输入姓名:kim学号:0110姓名:kim os:66 math:88 java:771 添加 2 显示所有学生信息 3 按学号查找 4 按姓名查找 5 按学号删除 6 保存 7 读入 0 退出请输入数字(1-7):5请输入学号:0136删除成功!1 添加 2 显示

19、所有学生信息 3 按学号查找 4 按姓名查找 5 按学号删除 6 保存 7 读入 0 退出请输入数字(1-7):2学号:0110姓名:kim os:66 math:88 java:77学号:0122姓名:lina os:96 math:72 java:831 添加 2 显示所有学生信息 3 按学号查找 4 按姓名查找 5 按学号删除 6 保存 7 读入 0 退出请输入数字(1-7):9Error!1 添加 2 显示所有学生信息 3 按学号查找 4 按姓名查找 5 按学号删除 6 保存 7 读入 0 退出请输入数字(1-7):0实验总结:以前用C语言做过关于学生信息的管理系统,这次用java,在有过c和c+的学习后,相对来说要比以前更有些思路,java也比c更为方便一些,在程序编写时总是忘记写一段就编译一段,以及时的能发现错误,导致最后程序编译时无法找到自己的错误。实现类的序列化的必要条件就是实现Serializable接口,对于序列化与反序列化有了一定的掌握。但是外部文件的存储和提取对象的过程还是出现过错误,需要再学习以熟练掌握。

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

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