java学生成绩标准管理系统专业课程设计.doc





《java学生成绩标准管理系统专业课程设计.doc》由会员分享,可在线阅读,更多相关《java学生成绩标准管理系统专业课程设计.doc(40页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、目 录1设计目标及内容要求12 系统总体设计13 系统具体设计24 运行结果及分析17致谢21参考文件22简单学生成绩管理系统设计和实现1设计目标及内容要求1、 设计目标:巩固和加深学生对高级语言程序设计课程基础知识了解和掌握,掌握java语言编程和程序调试基础技能,利用java语言进行基础软件设计,提升利用java语言处理实际问题能力。2、 内容要求实现学生成绩管理(增、删、改、查询、持久化、成绩排序、成绩统计等功效),在文件中增加、删除、学生信息,依据学号查询、修改学生信息,统计功效求每个人总分并按从高到低排序,经过这些操作对文件中信息保留。2 系统总体设计成功登陆系统以后,出现成绩管理界
2、面,系统初始化,可对学生成绩进行增加、删除、查询、修改、统计,进入对应界面进行成绩管理,退出系统自动保留此次操作内容,保留信息。简易步骤图: 登陆成绩管理界面增加删除查询修改统计退出3 系统具体设计创建Student类,设置变量及对应方法Student.java代码:package keshe;import java.io.Serializable;public class Student implements Serializableprivate String name;private int num;private int yuwen;private int shuxue;private
3、 int java;private int sum=0;public Student()public Student(String name, int num, int yuwen, int shuxue,int java) super();this.name = name;this.num = num;this.yuwen = yuwen;this.shuxue = shuxue;this.java = java;public String getName() return name;public void setName(String name) this.name = name;publ
4、ic int getNum() return num;public void setNum(int num) this.num = num;public int getYuwen() return yuwen;public void setYuwen(int yuwen) this.yuwen = yuwen;public int getShuxue() return shuxue;public void setShuxue(int shuxue) this.shuxue = shuxue;public int getJava() return java;public void setJava
5、(int java) this.java = java;public int getSum() return sum;public void setSum(int sum) this.sum = sum;public String toString() return Student name= + name + , num= + num + , yuwen= + yuwen+ , shuxue= + shuxue + , java= + java + , sum= + sum+ ;Student管理类StuC,创建对应方法,实现对Student对象操作(增、删、改、查询、持久化、成绩排序、成绩
6、统计等功效)供其对象调用。StuC.java代码package keshe;import java.io.BufferedReader;import java.io.File;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.FileReader;import java.io.IOException;import java.io.ObjectInputStream;import java.io.ObjectOutpu
7、tStream;import java.util.ArrayList;public class StuC ArrayList al=new ArrayList();File file = new File(e:/mydata.dat);/添加public void adds(Student s)al.add(s);/删除public void del(int n)for(int i=0;ial.size();i+)if(al.get(i).getNum()=n)al.remove(i);/求总分public void sum()for(int i=0;ial.size();i+)al.get(
8、i).setSum(al.get(i).getJava()+al.get(i).getShuxue()+al.get(i).getYuwen();/排序public void sort() for (int i = 0; i al.size(); i+) for (int j = 0; j al.size()-1-i; j+) if (al.get(j).getSum() al.get(j+1).getSum() Object o=al.get(j); al.set(j, al.get(j+1); al.set(j+1, (Student) o); public void paint()for
9、(int i=0;ial.size();i+)System.out.println(al.get(i);public String toString() return StuC al= + al + ;/输出流public void stor()ObjectOutputStream out = null;try out = new ObjectOutputStream(new FileOutputStream(file);out.writeObject(al);out.close(); catch (FileNotFoundException e) e.printStackTrace(); c
10、atch (IOException e) e.printStackTrace();/输入流public void read()ObjectInputStream in = null;try in = new ObjectInputStream(new FileInputStream(file);try al = (ArrayList)in.readObject(); catch (ClassNotFoundException e) al=null;in.close(); catch (FileNotFoundException e) File file = new File(e:/mydata
11、.dat); catch (IOException e) e.printStackTrace();/查找public Student find(int n)for(int i=0;ial.size();i+)if(al.get(i).getNum()=n)return al.get(i);return null;登陆界面及成绩管理全部界面,同过创建StuC对象,调用其方法实现成绩管理代码:package keshe;import java.awt.*;import java.awt.event.*;import java.io.FileNotFoundException;import java
12、.io.IOException;import javax.swing.*;public class Login extends JFrame private TextField f1;private TextField f2;private JButton b1;private JButton b2;private JButton b3;StuC scs=new StuC();/登陆界面public Login()Container cp=getContentPane();/容器cp.setLayout(new GridLayout(3,1);/三行一列布局Label l1=new Label
13、(用户名);Label l2=new Label(密 码);Panel p1=new Panel();Panel p2=new Panel();Panel p3=new Panel();f1=new TextField(10);f2=new TextField(10);f2.setEchoChar(*);/回显字符为*b1=new JButton(登录);b2=new JButton(重置);b3=new JButton(退出);p1.add(l1);/第一行添加label 1p1.add(f1);p2.add(l2);p2.add(f2);p3.add(b1);p3.add(b2);p3.a
14、dd(b3);cp.add(p1);cp.add(p2);cp.add(p3);b1.addActionListener(new Enter();b2.addActionListener(new ReWrite();b3.addActionListener(new Close();class Enter implements ActionListenerpublic void actionPerformed(ActionEvent e) if(f1.getText().equals(yazhou)&(f2.getText().equals(123456) scs.read();/初始化,从文件
15、读入信息 XueSheng frame1 = new XueSheng(); frame1.setBounds(200, 200, 300, 300); frame1.setVisible(true); else JOptionPane.showMessageDialog(null, 用户名或密码错误,请重新登录!);class ReWrite implements ActionListenerpublic void actionPerformed(ActionEvent e)f1.setText();f2.setText();f1.requestFocus();class Close imp
16、lements ActionListenerpublic void actionPerformed(ActionEvent e)JButton bt=(JButton)e.getSource();if(bt=b3)System.exit(0);/主函数 程序开始public static void main(String args) Login log=new Login();log.setTitle(系统登录);log.setBounds(200, 200, 300, 300);log.setBackground(Color.blue);log.setVisible(true);/信息管理界
17、面内部类 进行初始化和保留class XueSheng extends JFrame implements ActionListener private JButton cx, zj, tc, sc,xg,tj;public XueSheng() Container c = this.getContentPane();c.setLayout(new GridLayout(3, 1);c.setFont(new Font(true,Font.TRUETYPE_FONT,13);JPanel panel2 = new JPanel();JPanel panel1 = new JPanel();JL
18、abel label1 = new JLabel(欢迎进入成绩管理,SwingConstants.CENTER);label1.setFont(new Font(true,Font.TRUETYPE_FONT,13);label1.setForeground(Color.blue);c.add(label1);/添加按钮cx = new JButton(查询);panel2.add(cx);zj = new JButton(增加);panel2.add(zj);sc = new JButton(删除);panel2.add(sc);tc = new JButton(退出);panel2.add
19、(tc);xg = new JButton(修改);panel1.add(xg);tj = new JButton(统计);panel1.add(tj);c.add(panel2);c.add(panel1);cx.addActionListener(this);zj.addActionListener(this);sc.addActionListener(this);xg.addActionListener(this);tc.addActionListener(this);tj.addActionListener(this);this.setVisible(true);public void
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- java 学生 成绩 标准 管理 系统 专业课程 设计

限制150内