java程序设计课程论文

java程序设计课程论文
java程序设计课程论文

成绩

课程论文

题目:学生信息管理系统界面设计

课程名称:java程序设计

学生姓名:刘文璐

学生学号:1314030316

系别:电子工程学院

专业:通信工程

年级:2013级

任课教师:窦飞

电子工程学院制

2015年12月

学生信息管理系统界面设计

学生:刘文璐

指导教师:窦飞

电子工程学院通信工程专业

1、引言

学生信息管理系统以计算机为工具,将管理人员从繁琐的数据计算中解脱出来,全面的提高了管理的效率和质量,使得管理更加的规范和严谨。

世界处于信息化时代,人类的生活随着科技的发展越来越好,特别是计算机的出现,更加丰富了多姿多彩的生活。作为新时代的大学生,要随时掌握和利用信息,辅之以科学文化知识,来适应社会发展的要求,将来为祖国奉献自己的一份力。计算机Java语言是一门理论与实践共存的课程,但是更侧重于实践,因此,我们要将实践教学与理论教学达到密切结合。

2、Eclipse的介绍

Eclipse 是一个开放的、基于的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。幸运的是,Eclipse 附带了一个标准的插件集,包括Java(Java Development Kit,)。

Eclipse 还包括插件开发环境(Plug-in Development Environment,PDE),这个组件主要针对希望扩展 Eclipse 的软件开发人员,因为它允许他们构建与 Eclipse 环境无缝集成的工具。由于 Eclipse 中的每样东西都是插件,对于给 Eclipse 提供插件,以及给用户提供一致和统一的集成开发环境而言,所有工具开发人员都具有同等的发挥场所。

3、学生信息管理系统界面设计方案制定

3.1系统总体设计方案

有新生来报到,要逐个录入其信息,如:学生姓名,性别,,出生日期,国籍。要求设计链表类来实现,并统计学生人数。

文本界面为:

1.添加学生信息

2.删除学生信息

3.查询学生信息

4.修改学生信息

5.学生信息保存

6.退出

总体结构我们采取模块化方式进行程序设计,要求程序的功能设计、数据结构设计及整体结构设计合理。系统以菜单界面方式进行,每一条记录包括一个学生的姓名、性别、出生日期、国籍。同时,应具备以下功能:

1、删除功能:对指定学生的信息进行删除。

2、修改功能:对指定学生的信息进行修改。

3、查询功能:选择某种方式并输入该信息查询符合条件的学生信息。

4、添加功能:添加新增学生信息。

5、退出主菜单。

3.2模块设计

3.2.1增加学生信息

判断**学生是否存在,若存在则错误,不存在则添加。具体流程如下图所示:

图1增加学生信息流程图

3.2.2删除学生信息

删除学生的信息则必须对链表结点进行删除意味着将某个要删除结点前后的连续打断,去掉该结点,使前后指针变量重新连接,完成链表结点的删除任务

图2删除学生信息流程图 3.3.3、查询学生信息 按学生学号查询

图3查询学生信息流程图

3.3.4、总功能模块图:

图4总功能模块图

5、运行结果与分析

图5 程序实现图

查询学生信息

图6查询学生信息界面图

添加学生信息

图7添加学生信息界面图

6、总结及心得体会

经过将近两个星期的设计和整理,课程设计也差不多弄好了。在这段时间里,我们遇到了很多问题,学会了很多东西。刚开始的时候,我们以为这个设计只是一个很实际的编程而已,但是,当自己真正动起手来编程的时候,我们才发现这个设计并没有想象中的那么简单。

做课程设计让我们对Java有了全新的认识,它不像原来我们以为的那么枯燥,反而变得很有趣,我们学到了很多在上课时见都没有见过的类和方法,这让我们对编程又有了许多新的想法和认识。

在这期末考试前期,学院给我们安排的课程设计周,总让我们觉的有些为难我们,这样一个复杂困难而又繁琐的作业,似乎弄得我们既没有时间也没有心情复习,我们曾一度地抱怨过学院,在完成它之后,我们发现我们错了,课程设计不仅让我们巩固了所学的知识,还使得我们学习到了更多平时所忽略的,最重要的是,它磨砺了我们,让我们在大学的下一个阶段能更好的成长。

7、参考文献

[1] 王昆,张力生.Java Swing中的渲染器机制.重庆工学学院报,2008.

[2] 吕校春,李玲莉.基于Swing的Java GUI组件开发[J].机械工程师,2008.

[3] 陆维厅,邵燕.基于JAVA的SOCKET实现网上交谈.河海常州分校学报,2005.

[4] 戴歆.JAVA Swing程序开发.软件导刊,2007.

[5] 莫足琴.基于Java Socket多客户端并发通信聊天程序的设计与实现.十堰职业技术学博士论文,2008.

[6] 王静,曲凤娟.基于Socket的多用户并发通信的设计[J].福建电脑,2007.

[7] 赵文清,姜波.基于Socket的Java语言网络通讯机制和程序设计.信息技术,2006.

[8] 温涛.工程概念.软件工程师,2006.

[10] 朗波.JAVA语言程序设计.清华大学出版社,2005.

8、附录

import java.awt.*;

import java.awt.event.*;

import javax.swing.*;

import java.sql.*;

//主函数、主要类

public class JCTX {

public static void main(String[] args) {

new Frm_Main();

}

}

// 实现类

class Frm_Main implements ActionListener // throws IOException

{

public JFrame frame;

public Container c;

public JMenuBar menuBar;

public JMenu mainMenu1;

public JMenu mainMenu2;

public JMenu mainMenu3;

public JMenuItem subMenu1[] = new JMenuItem[5];

public JMenuItem subMenu2[] = new JMenuItem[7];

public JMenuItem subMenu3[] = new JMenuItem[2];

JButton toolBarButton[] = new JButton[8];

public JToolBar toolBar;

String strTip[] = { "查询您要找的学生记录...", "添加学生记录...", "删除已有的学生记录", "修改学生记录...",

"使您修改的学生记录生效...", "使您添加的学生记录生效...", "确认删除当前记录...", "退出本系统:)" };

String id = new String();

String name = new String();

String sex = new String();

String birthday = new String();

String address = new String();

String birth = new String();

Connection conn;

ResultSet rs;

Statement st;

PreparedStatement pst;

public JLabel idL = new JLabel("学号:");

public JLabel nameL = new JLabel("姓名:");

public JLabel sexL = new JLabel("性别:");

public JLabel jlbirth = new JLabel("出生年月:");

public JLabel jladdr = new JLabel("籍贯:");

public JTextField idT = new JTextField();

public JTextField nameT = new JTextField();

public JTextField sexT = new JTextField();

public JTextField jtbirth = new JTextField();

public JTextField jtaddr = new JTextField();

public Frm_Main() {

frame = new JFrame("学生信息管理系统");

c = frame.getContentPane();

c.setLayout(null);

menuBar = new JMenuBar();

toolBar = new JToolBar();

toolBar.setFloatable(false);

frame.setJMenuBar(menuBar);

frame.setResizable(false);

mainMenu1 = new JMenu("管理");

String str1[] = { "添加用户", "删除用户", "查询用户", " ", "退出" };

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

if (i == 3)

mainMenu1.addSeparator();

else {

subMenu1[i] = new JMenuItem(str1[i]);

subMenu1[i].addActionListener(this);

mainMenu1.add(subMenu1[i]);

}

}

menuBar.add(mainMenu1);

mainMenu2 = new JMenu("维护学生信息");

String str2[] = { "查询记录", "添加记录", "删除记录", "修改记录", "提交修改", "提交添加",

"确认删除" };

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

subMenu2[i] = new JMenuItem(str2[i]);

subMenu2[i].addActionListener(this);

mainMenu2.add(subMenu2[i]);

}

menuBar.add(mainMenu2);

mainMenu3 = new JMenu("帮助");

String str3[] = { "帮助...", "关于..." };

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

subMenu3[i] = new JMenuItem(str3[i]);

subMenu3[i].addActionListener(this);

mainMenu3.add(subMenu3[i]);

}

menuBar.add(mainMenu3);

String strToolBar[] = { "查询", "添加", "删除", "修改", "提交修改", "提交添加", "确认删除" };

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

toolBarButton[i] = new JButton(strToolBar[i]);

toolBarButton[i].setToolTipText(strTip[i]);

toolBarButton[i].addActionListener(this);

toolBar.add(toolBarButton[i]);

}

toolBar.setLocation(0, 0);

toolBar.setSize(400, 30);

c.add(toolBar);

idL.setLocation(35, 40);

idL.setSize(40, 20);

// idL.setFont(new Font("宋体",Font.BOLD,12));

c.add(idL);

idT.setLocation(90, 40);

idT.setSize(200, 20);

// idT.setEnabled(false);

c.add(idT);

nameL.setLocation(35, 70);

nameL.setSize(40, 20);

c.add(nameL);

nameT.setLocation(90, 70);

nameT.setSize(200, 20);

c.add(nameT);

sexL.setLocation(35, 100);

sexL.setSize(40, 20);

c.add(sexL);

sexT.setLocation(90, 100);

sexT.setSize(200, 20);

c.add(sexT);

jlbirth.setLocation(35, 160);

jlbirth.setSize(40, 20);

c.add(jlbirth);

jtbirth.setLocation(90, 160);

jtbirth.setSize(200, 20);

c.add(jtbirth);

jladdr.setLocation(35, 190);

jladdr.setSize(40, 20);

c.add(jladdr);

jtaddr.setLocation(90, 190);

jtaddr.setSize(200, 20);

c.add(jtaddr);

JLabel information = new JLabel("");

information.setFont(new Font("宋体", Font.BOLD, 35));

information.setSize(380, 110);

information.setLocation(10, 210);

c.add(information);

frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

frame.setSize(400, 400);

frame.setLocation(200, 200);

frame.setVisible(true);

conDB();

}

// 以上是设置数据库面版、框架

// 以下是连接数据库

public Connection conDB() {

Connection con = null;

try {

Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");

} catch (ClassNotFoundException e) {

}

try {

con = DriverManager.getConnection(

"jdbc:sqlserver://127.0.0.1:1433;databaseName=mysql", "sa",

"111");

} catch (SQLException e) {

JOptionPane.showMessageDialog(null, "数据库连接失败");

}

return con;

}

// 以下是关闭数据库

public void closeDB() {

try {

pst.close();

conn.close();

} catch (SQLException e) {

JOptionPane.showMessageDialog(null, "数据库关闭失败!");

}

}

// 以下是针对数据库的各种操作

public void actionPerformed(ActionEvent e) {

conn=conDB();

if (e.getSource() == subMenu3[1] || e.getSource() ==

toolBarButton[7])

JOptionPane.showMessageDialog(null, "");

if (e.getSource() == subMenu1[0] || e.getSource() == subMenu1[1] || e.getSource() == subMenu1[2])

JOptionPane.showMessageDialog(null, "");

// 查找功能的实现

if(e.getSource() == subMenu2[0] || e.getSource() == toolBarButton[0]) {

String idid = JOptionPane.showInputDialog("请输入要查找的学生学号");

if (idid.trim() != "") {

//String strSQL = "select * from student where id =’" + idid+ "’";

String strSQL = "select * from student where id =?" ;

try {

pst=conn.prepareStatement(strSQL);

pst.setString(1, idid);

rs=pst.executeQuery();

/*st=conn.createStatement();

rs = st.executeQuery(strSQL);*/

int count = 0;

while (rs.next()) {

id = rs.getString("id");

name = rs.getString("name");

address = rs.getString("address");

sex = rs.getString("sex");

birth=rs.getString("birthday");

count++;

}

if (count == 0)

JOptionPane.showMessageDialog(null, "对不起,没有您要查找的学生!");

else {

idT.setText(id);

nameT.setText(name);

sexT.setText(sex);

jtaddr.setText(address);

jtbirth.setText(birth);

}

} catch (Exception ex) {

JOptionPane.showMessageDialog(null, "抱歉,程序出现异常!");

}

}

}

if (e.getSource() == subMenu1[4]) {

closeDB();

System.exit(0);

}

if(e.getSource() == subMenu2[1] || e.getSource() == toolBarButton[1]) {

JOptionPane.showMessageDialog(null, "请输入要添加的学生信息");

idT.setEnabled(true);

idT.setText("");

nameT.setText("");

sexT.setText("");

jtaddr.setText("");

jtbirth.setText("");

}

if(e.getSource() == toolBarButton[5] || e.getSource() == subMenu2[5]) {

if ((idT.getText().trim()).equals("")

|| (nameT.getText().trim()).equals("")

|| (sexT.getText().trim()).equals("")

|| (jtaddr.getText().trim()).equals("")

|| (jtbirth.getText().trim()).equals(""))

JOptionPane.showMessageDialog(null, "请输入信息再点击提交添加!");

else {

id = idT.getText();

name = nameT.getText();

sex = sexT.getText();

birthday = jtaddr.getText();

address = jtbirth.getText();

String strSQL = "insert into student values(?,?,?,?,?)";

try {

pst=conn.prepareStatement(strSQL);

pst.setString(1, id);

pst.setString(2, name);

pst.setString(3, sex);

pst.setString(4, address);

pst.setString(5, birthday);

pst.executeUpdate();

} catch (SQLException e1) {

// TODO Auto-generated catch block

//e1.printStackTrace();

JOptionPane.showMessageDialog(null, "数据库中已经存在您要添加的学生的学号!");

return;

}

/*try {

pst.executeUpdate(strSQL);

} catch (Exception exx) {

JOptionPane.showMessageDialog(null, "数据库中已经存在您要添加的学生的学号!");

* idT.setText(""); nameT.setText(""); sexT.setText("");

* birthdayT.setText(""); departmentT.setText("");

return;

}*/

JOptionPane.showMessageDialog(null, "恭喜您,添加成功了!");

}

}

if(e.getSource() == subMenu2[4] || e.getSource() == toolBarButton[4]) {

if ((idT.getText().trim()).equals("")

|| (nameT.getText().trim()).equals("")

|| (sexT.getText().trim()).equals("")

|| (jtaddr.getText().trim()).equals("")

|| (jtbirth.getText().trim()).equals("")) {

JOptionPane.showMessageDialog(null, "请输入信息再点击修改!");

return;

} else {

id = idT.getText();

name = nameT.getText();

sex = sexT.getText();

birthday = jtaddr.getText();

address = jtbirth.getText();

String strSQL = "update student set

name=?,sex=?,address=?,birthday=? where id=?";

try {

pst=conn.prepareStatement(strSQL);

pst.setString(1, name);

pst.setString(2, sex);

pst.setString(3, address);

pst.setString(4, birthday);

pst.setString(5, id);

pst.executeUpdate();

} catch (SQLException e1) {

// TODO Auto-generated catch block

// e1.printStackTrace();

JOptionPane.showMessageDialog(null, "数据库中已经存在您要修改的学生记录!");

return;

}

/*try {

pst.executeUpdate(strSQL);

} catch (Exception exx) {

JOptionPane.showMessageDialog(null, "数据库中已经存在您要修改的学生记录!");

* idT.setText(""); nameT.setText(""); sexT.setText("");

* birthdayT.setText(""); departmentT.setText("");

return;

}*/

JOptionPane.showMessageDialog(null, "恭喜您,修改成功了!");

}

}

if(e.getSource() == subMenu2[3] || e.getSource() == toolBarButton[3]) {

String idid = JOptionPane.showInputDialog("请输入要修改的学生学号");

if (idid.trim() != "") {

String strSQL = "select * from student where id =?" ;

try {

pst=conn.prepareStatement(strSQL);

pst.setString(1, idid);

// rs =

// st.executeQuery("select * from Coolboy where id

=’2004010123’");

rs = pst.executeQuery();

int count = 0;

while (rs.next()) {

id = rs.getString("id");

name = rs.getString("name");

address = rs.getString("address");

sex = rs.getString("sex");

birthday = rs.getString("birthday");

count++;

}

if (count == 0)

JOptionPane.showMessageDialog(null, "对不起,没有您要修改的学生信息!");

else {

idT.setText(id);

nameT.setText(name);

sexT.setText(sex);

jtaddr.setText(address);

jtbirth.setText(birthday);

idT.setEnabled(false);

}

} catch (Exception ex) {

JOptionPane.showMessageDialog(null, "抱歉,程序出现异常!");

}

}

}

if(e.getSource() == subMenu2[2] || e.getSource() == toolBarButton[2]) {

String idDel = JOptionPane.showInputDialog("请输入要删除的学生学号");

if (idDel.trim() != "") {

String strSQL = "select * from student where id =?";

try {

pst=conn.prepareStatement(strSQL);

pst.setString(1, idDel);

rs = pst.executeQuery();

int count = 0;

while (rs.next()) {

id = rs.getString("id");

name = rs.getString("name");

address = rs.getString("address");

sex = rs.getString("sex");

birthday = rs.getString("birthday");

++count;

}

if (count == 0)

JOptionPane.showMessageDialog(null, "对不起,没有您要

删除的学生信息!");

else {

idT.setText(id);

nameT.setText(name);

sexT.setText(sex);

jtaddr.setText(address);

jtbirth.setText(birthday);

idT.setEnabled(false);

}

} catch (Exception ex) {

JOptionPane.showMessageDialog(null, "抱歉,程序出现异常!");

}

}

}

if(e.getSource() == toolBarButton[6] || e.getSource() == subMenu2[6]) {

if ((idT.getText().trim()).equals("")

|| (nameT.getText().trim()).equals("")

|| (sexT.getText().trim()).equals("")

|| (jtaddr.getText().trim()).equals("")

|| (jtbirth.getText().trim()).equals("")) {

JOptionPane.showMessageDialog(null, "请点击删除记录按钮!");

return;

} else {

id = idT.getText();

String strSQL = "delete from student where id=?";

try {

pst=conn.prepareStatement(strSQL);

pst.setString(1, id);

pst.executeUpdate();

} catch (Exception exx) {

JOptionPane.showMessageDialog(null, "出错了!");

/*

* idT.setText(""); nameT.setText(""); sexT.setText("");

* birthdayT.setText(""); departmentT.setText("");

*/

return;

}

JOptionPane.showMessageDialog(null, "删除成功!");

}

}

} }

Java程序设计课程设计学生考勤系统

信息与电子工程学院 课程设计报告 Java程序设计课程设计课程名称: 名:姓 学号: 级:班 指导老师:完成时间:月6年2016 学生考勤系统 问题描述:以班为单位,可以以日期为标识记录每个学生的考勤情况(正常、旷课、请假、迟到、. 早退)、可以查看某个学生的考勤情况、可以查看全班的考勤情况 0.5需求分析(标题,黑体,小四,段前段后行)1.(1)用户需求描述:

学生用户:学生对本系统的主要需求是在线请假以及查看学期内的上课出勤信息。 在线请假中,学生可以随时查看请假的进展情况。另外学生还可以修改本人的密码。 教师用户:任课老师对本系统的主要需求是查看班级信息,查看学生信息。并且在上课前进行点名,管理所教班级学生的上课出勤信息,查看学生上课出勤情况,对学生请假审请进行批准等。另外,教师还可以修改自己的密码。 (2)系统功能划分: 根据用户需求的描述,该考勤管理系统应该具备:在线请假模块,考勤管理模块这两大模块。 在线请假模块: 该模块主要操作用户是由学生,由学生登录并进行请假操作。可以选择请假开始时间,请假结束时间,请假的原因等,最后提交由教师和辅导员进行审核审批,审核通过后学生可以在请假记录里面实时查看请假通过情况。若教师或辅导员不允许该请假,学生可以在请假失败记录里面查看具体原因。 考勤管理模块: 该模块主要由教师登录并进行操作,自己操作界面中修改学生考勤。老师在上课时通过该模块可以对本课程考勤情况进行网上考勤,考勤结果会保存在后台,也可以通过选择导出为E表格,最后方便统计整个学期本课程所有学生的考勤情况。 2.总体设计 ; 功能结构图 : 图ER : 数据库设计数据库需求分析1 学生考勤管理系统要实现在线请假、随堂考勤两大子系统,需要了解学生用户、教 学生表:学生流水号、师用户两类用户的功能模块。然后,据此分析出数据需求。 请假表:请假开始时间、请学生学号、学生名字、性别、宿舍号、联系方式、密码。、ID假结

java记事本课程设计论文附源码

设计题目:记事本课程设计 专业:电子信息科学与技术 班级:电子1202班 学号:20121210606 姓名:王鹏 2015 年7月

XXX学院本科学生课程设计任务书

摘要 目前,很多新的技术领域都涉及到了Java语言,Java语言是面向对象编程,并涉及到网络、多线程等重要的基础知识,因此Java语言也是学习面向对象编程和网络编程的首选语言。此次课程设计主要通过编写一个简单的记事本程序使我们深入理解并实践在本课程中所学的有关JAVA程序设计方面的语言基础、异常处理、事件处理、小应用程序以及图形用户界面设计等内容。此简易记事本程序,使用Java程序编写,能够进行输入文字操作,并具有新建文件,打开文件,保存文件,退出,复制,粘贴,剪切等功能。该程序主要用到了Java swing和事件监听等。 关键词记事本程序,java语言,Java swing

目录 摘要 (1) 1 需求分析 (3) 1.1需求分析 (3) 1.2功能设计 (3) 2 概要分析 (4) 2.1概要设计思想 (4) 2.2程序运行界面 (4) 2.3程序模块说明 (4) 2.4流程图 (5) 2.5程序相关说明 (6) 3 程序详细设计与分析 (8) 3.1构建菜单栏及其下拉菜单 (8) 3.2“文件”菜单操作的事件监听 (8) 3.3“编辑”、“格式”等菜单的事件监听 (10) 3.4异常处理 (11) 4 测试分析 (12) 5 源程序清单 (15) 结论 (22) 参考文献 (23)

1 需求分析 1.1需求分析 现在网络上各种文档编辑器数不胜数,有EmEditor ,UEStudio ,GridinSoft Notepad ,Notepad++,win32pad ,SkimEdit,UniRed, xint 。功能也是应有尽有,有能改变字体的,有能改变文字颜色的。但是,这些软件又存在各种各样的瑕疵或问题:有的文件体积相对于一般文字编辑来说太大;有的功能太繁杂,使初级使用者一时难以掌握。仅从日常应用方面来说,一个文本编辑器只需一些简单实用的功能就够了。本程序设计就是依照这样一种使用需要设计了一个简单的记事本程序。 1.2功能设计 本程序要构建的记事本程序参照了Windows操作系统的记事本工具,其功能有以下几个方面: 1、菜单中有“文件”,“编辑”,“格式”,“查看”,“帮助”五个主菜单。 2、“文件”有“新建”“打开”“保存”“另存为”“退出”五个子菜单:分别用于新建文件,打开文件,保存文件,另存文件,退出记事本。 3、“编辑”中有“撤销”“剪切”“复制”“粘贴”“全选”“时间/日期”六个字菜单:用于撤销操作,剪切文字,复制文字,粘贴文字。全部选择,插入日期、时间。 4、“格式”菜单中有“自动换行”和“字体”两个子菜单。 5、“查看”菜单只是显示状态栏。 6、“帮助”菜单中只有“关于记事本”子菜单,主要用于显示该程序的名字,版本等信息。

JAVA程序设计课程教学大纲

课程编号: “Java语言程序设计”课程教学大纲 Java Program Design Course Outline 60学时3学分 一、课程的性质、目的及任务 Java语言程序设计是计算机科学与技术专业软件方向的一门必修课程。通过本课程的教学,深化学生面向对象的编程设计思想和新一代程序设计的逻辑思维方式,提高学生在软件设计过程中分析问题和解决问题的实际动手能力,使学生的理论知识和实践技能得到共同发展。通过对Java语言及基于Java语言的程序设计的教学,培养学生用Java进行面向对象程序设计的能力。 要求掌握Java的基本语法、面向对象的语言特性、例外处理、applet、图形用户界面、多线程、输入输出、网络编程、JDBC以及面向对象程序设计的主要原则和方法。 二、适用专业——计算机科学与技术 三、先修课程——C++程序设计 四、课程的基本要求 通过本课程的学习,学生应能达到下列要求: (1)了解JAVA语言的基本语法。 (2)熟悉JAVA编程开发环境如JDK1.4和JCreator的安装、配置和使用。 (3)掌握一般图形用户的设计和事件处理机制。 (4)掌握Java实现多线程、流式输入输出的方法。 (5)掌握与数据库连接的方法。 (6)掌握网络编程的基本思想和方法。 (7)能比较熟练地用JAVA语言进行一般的程序设计,培养良好的编程风格和习惯。 五、课程的教学内容 (一)课堂讲授的教学内容 1.Java和面向对象概述 Java语言概述,面向对象软件方法概述,面向对象的基本概念。 2.Java运行环境 安装并配置Java平台,Java集成开发环境,Java程序的结构。 3.Java语言基础 Java的关键字、标识符,数据类型,常量与变量,运算符,流程控制语句。 4.类和对象 基本概念,类,方法,访问控制符,静态修饰符、静态字段和静态方法,抽象类与抽象方法,最终类、最终属性与最终方法。 5.继承 继承的概念,扩展类,多态与动态绑定,构造函数的继承与重载,包,接口。 6.字符、字符串和数组

文件加密与解密—Java课程设计报告

JAVA课程设计题目:文件的加密与解密 姓名: 学号: 班级: 日期:

目录 一、设计思路 (3) 二、具体实现 (3) 三、运行调试与分析讨论 (8) 四、设计体会与小结 (11) 五、参考文献 (12) 六、附录 (12)

一、设计思路 自从Java技术出现以业,有关Java平台的安全性用由Java技术发展所引发的安全性问题,引起了越来越多的关注。目前,Java已经大量应用于各个领域,研究Java的安全性对于更好地利用Java具有深远的意义。使用Java的安全机制设计和实现安全系统更具有重要的应用价值。 本课程设计,主要实践Java安全中的JCE模块,包括密钥生成,Cipher对象初始化、加密模式、填充模式、底层算法参数传递,也涉及文件读写与对象输入输出流。 二、具体实现 本系统通过用户界面接收三个参数:明文文件、密文文件、口令。采用DES加密算法,密码分组链(Cipher Block Chaining,CBC)加密模式,PKCS#5-Padding的分组填充算法。因为CBC涉及到底层算法参数的解密密钥的传递,所以将明文文件中的字节块以密封对象(Sealed Object)的方式加密后,用对象流输出到密文文件,这样就将密文、算法参数、解密密钥三都密封到一个对象中了。口令的hash值作为产生密钥的参数。设计流程图如下所示: 文件加密与解密设计流程图

本系统中,包含Default,Shares,SecretKey,EncAndDec四个包共6个类组成。定义的几个参数:MAX_BUF_SIZE为每次从文件中读取的字节数,也是内存缓冲区的大小;加密算法为DES;加密模式是密码分组链(CBC)模式;分组填充方式是PKCS#5Padding。包和类结构图如下所示: 本课程设计,包和类结构图: 以下为包中的类的方法实现说明 Package Shares类结构图

Java语言程序设计课程设计指导书

《JAVA程序设计基础课程设计》指导书 课程名称:JAVA程序设计基础课程设计 设计题目:班级通信录电子万年历简单计算器聊天小程序 图书管理系统学生成绩管理系统英汉电子小字典 使用班级:通信151-2 指导教师:宫淑兰、张明玉 一、课程设计的目的和要求 1、通过面向对象程序设计课程设计,使学生能将学到的面向对象的程序设计思想用到具体的工作和学习中,加深对类与对象的理解,要求学生能够对现实生活中许多具体的事物抽象出来,并掌握继承与派生,基类、虚函数和多态性的概念。 2、通过这次课程设计掌握面向对象的编程思想,为后续课程打下基础。 3、培养学生实际操作能力和团结协作能力,为以后的工作打下坚实的基础。 二、课程设计内容 运用Java语言描述各种类,每一个类应包含数据成员和成员函数。设计基类和派生类,并运用多态性和虚函数的知识。注重面向对象程序设计理论知识的理解与实际的动手编程能力,要求学生设计具有继承与派生以及多态性的类,理解面向对象程序设计的核心的概念。 不得从网上下载或者抄袭别人的资料,一经发现,课程设计不及格。 三、课程设计进度表 时间为一周,大致划分如下: 第一天布置任务及分组,总体需求分析,编写相关文档,设计说明,查找资料第二天基类、各派生类设计及代码实现,各模块的编程设计 第三天各模块的调试与修改,系统组装,程序总调试,修改 第四天~第五天撰写课程设计说明书,课程设计检查与答辩 四、课程设计步骤与方法 1、需求分析:为提出的问题找出解决的办法和思路。用自顶向下的方法创建主程序和子程序,控制对象间的相互作用。 2、根据需求,设计系统功能模块,并设计相应的类结构。 3、根据基本思路,确定输入和输出,设计程序的算法。

Java课程设计报告

湖北大学 本科课程设计 题目 ATM 自助机模拟程序姓名 学号 专业年级 指导教师 职称

目录 第一章系统描述 (2) 1 前言 (2) 2 系统功能需求 (2) 第二章系统分析与设计 (3) 1 功能模块划分 (3) 2 功能模块的描述 (3) 3 系统设计流程图 (4) 4 测试数据及期望结果 (6) 第三章系统详细设计 (7) 1 主界面开发设计 (7) 2 功能选择界面开发设计 (7) 3 取款界面开发设计 (7) 4 存款界面开发设计 (8) 5 转账界面开发设计 (8) 6 查询界面开发设计 (9) 7 修改密码界面开发设计 (9) 8 界面开发设计使用函数 (9) 第四章系统测试 (11) 第五章源程序部分清单 (21) 第六章实验心得 (30) 参考文献 (31)

第一章系统描述 1 前言 Java技术是一门简单的,面向对象的,分布式的,解释型的,健壮安全的,结构中立的,可移植的,性能优异、多线程的动态语言,它也是一个平台,它基于Java虚拟机技术,借助这个东西建立了跨平台的优势。Java编程语言与众不同之处在于:Java程序既是编译型的,又是解释型的。 Java平台是一种纯软件平台,它有三个版本Java SE、Java EE、Java ME。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于个人PC、数据中心、移动电话和互联网,同时拥有全球最大的开发者专业社群。在全球云计算和移动互联网的产业环境下,Java更具备了显著优势和广阔前景。 本课程设计采用Eclipse作为开发工具,并采用Window Builder下的SWT Designer来实现相应的功能。着重通过模拟实现当前非常快捷又使用的ATM机来加深对java开发设计的了解,从而进一步提高自己对java图像界面的设计及相关知识的认识。 2 系统功能需求 当输入给定的卡号和密码(初始卡号和密码为123456)时,系统能登录ATM 柜员机系统,用户可以按照以下规则进行: (1)查询余额:初始余额为10000元。 (2)ATM取款:每次取款金额为100的倍数,一次取款不能超过1000,总额不 超过5000元,支取金额不允许透支,有快捷取款和用户自定义取款。 (3)ATM存款:每次存款金额为100的倍数,一次存款不能超过1000,不能出 现负存款。 (4)ATM转账:只有在两次输入账号相同且输入转账金额正确的情况下才允许 转账,不允许透支。 (5)修改密码:新密码长度不小于6位,不允许出现6位完全相同的情况,只 有旧密码正确,新密码符合要求,且两次输入相同的情况下才可以成功修改密码。

银行存取系统设计与实现(所有代码)JAVA课程设计

《JA V A程序设计》 课程设计报告 设计题目:银行存取系统设计与实现

毕业设计(论文)原创性声明和使用授权说明 原创性声明 本人郑重承诺:所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得及其它教育机构的学位或学历而使用过的材料。对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。 作者签名:日期: 指导教师签名:日期: 使用授权说明 本人完全了解大学关于收集、保存、使用毕业设计(论文)的规定,即:按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。 作者签名:日期:

学位论文原创性声明 本人郑重声明:所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。本人完全意识到本声明的法律后果由本人承担。 作者签名:日期:年月日 学位论文版权使用授权书 本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。本人授权大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。 涉密论文按学校规定处理。 作者签名:日期:年月日 导师签名:日期:年月日

学生信息管理系统java课程设计含源代码完整版

学生信息管理系统j a v a 课程设计含源代码 HEN system office room 【HEN16H-HENS2AHENS8Q8-HENH1688】

JAVA程序设计课程设计报告 课题: 学生信息管理系统 姓名: 学号: 同组姓名: 专业班级: 指导教师: 1 2 1、功能模块划分 (3) 2、数据库结构描述 (4) 3、系统详细设计文档 (6) 4、各个模块的实现方法描述 (9) 5、测试数据及期望结果 (11)

一、系统描述 1、需求实现的功能 、录入学生基本信息的功能 学生基本信息主要包括:学号、姓名、年龄、出生地、专业、班级总学分,在插入时,如果数据库已经存在该学号,则不能再插入该学号。 、修改学生基本信息的功能 在管理员模式下,只要在表格中选中某个学生,就可以对该学生信息进行修改。 、查询学生基本信息的功能 可使用“姓名”对已存有的学生资料进行查询。 、删除学生基本信息的功能 在管理员模式下,只要选择表格中的某个学生,就可以删除该学生。 、用户登陆 用不同的登录权限可以进入不同的后台界面,从而实现权限操作。 、用户登陆信息设置 可以修改用户登陆密码 2、设计目的 学生信息管理系统是一个教育单位不可缺少的部分。一个功能齐全、简单易用的信息管理系统不但能有效地减轻学校相关工作人员的工作负担,它的内容对于学校的决策者和管理者来说都至关重要。所以学生信息管理系统应该能够为用户提供充足的信息和快捷的查询手段。但一直以来人们使用传统人工的方式管理文件档案、统计和查询数据,这种管理方式存在着许多缺点,如:效率低、保密性差、人工的大量浪费;另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少困难。随着科学技术的不断提高,计算机科学日渐成熟,其强大的

JAVA程序设计课程设计指导书

JA V A程序设计课程设计指导书 一、课程设计的目的与要求: 1.掌握JA V A语言中面向对象的概念,并能在程序中熟练运用。 2.了解面向对象程序设计(JA V A)的基本概念以及运用面向对象技术进行程序设计的基本思 想。 3.能正确编写和调试JA V A程序。 4.了解在JA V A环境下进行程序设计的基本思想和方法。 二、设计内容 2.1项目一:项目描述与设计要点(数据结构算法要求较高) 1.设计一个连连看的游戏程序。 2.在JAVA环境下,将上述程序使用GUI、数据结构等内容完成 3.设计思路: (1)界面设计 1)初始测试界面可以考虑使用简单的按钮来代表连连看游戏中的图标。 2)布局可以考虑使用GRID方式。 3)设计菜单选择连连看难度等内容,具体可参照QQ连连看,也可自定义。 4)考虑完善界面,例如图片、声音、动画等。 (2)代码设计 1)本设计的核心为练练看算法的设计,可以考虑数据结构中的图的遍历章节,合理设计 算法,将界面中各按钮的分布映射入数学矩阵进行路径规划。(可以上网搜索相关算法)。 2)完成连连看游戏的图形、算法等代码的设计。 3)有能力的同学可以考虑网络对战,设计SOCKET服务器,使得CLIENT之间通信是否已完 成游戏。 4.实验步骤(包括操作方法、数据处理) (1)界面设计 (2)算法设计 (3)代码设计 (4)网络通信设计 2.2项目二:项目描述与设计要点(计算机图形、网络编程要求较高) 1.一个类似于电子白板的“你画我猜”游戏设计(若不知道此游戏,请上网查找),游戏要求 一方绘图后通过网络将绘图内容显示于另外一方界面中,由另外一方猜测绘制的内容,并通过键盘输入告知绘图方。 2.在JAVA环境下,将上述内容设计成为应用程序。

java课程设计报告书

《Java程序设计》课程设计报告 2015—2016学年第二学期 设计题目:《数字连连看》 学生:黄杰 学号: 2 专业班级:软件工程1402 指导教师:国权 2016 年 7 月 2 日 目录 1.JAVA程序设计书 3 1.1《简易连连看》3 1.1.1具体要求 3 1.2本系统设计的知识点 3

2.功能设计 3 2.1算法设计 3 2.2部分模块流程图 4 3.代码设计 5 4.界面及运行效果,测试工具与测试效果14 5.设计总结 16 5.1.程序调试情况:16 5.2.本人在程序设计中感想: 16 6.致 16 主要参考文献16

: 1.1Java程序课程设计任务书 1.1《简易连连看游戏》 本程序基本实现了小游戏连连看的功能,玩家找出游戏中2个相同图案的方块,如果它们之间的连接线不多于3根直线,则将其连接起来,就可以成功将图案相同的方块消除,否则不会消失,当游戏中已没有满足条件的图案时,点击重列,可重新排序,游戏结束会跳出所得分数,该游戏的特点是与自己竞争,超过自己之前所创纪录。 1.1.1具体要求(包括技术要求等): <1>. 该游戏界面为方格类型,由纵6横7的直线平行垂直交叉组成,分别是6行5列方块拼接,共有30格小方块。方块上随机分布一些数字,数字的要至少两两相同,位置随机打乱。 <2>. 当将相同数字的方块连接,但要满足只能至少单边无阻碍呈直线趋势连接,否则无效,若连接一对成功就消失于界面,继续游戏,直到游戏结束,并能返回所得分数。 <3>. 重列按钮(帮助)的功能:游戏过程中,遇到困难难以寻找下一符合要求的一对数字,可按左下按钮重置重新排列方可继续游戏。 <4>. 退出按钮:击左下方的“退出游戏”按钮,即可结束游戏。 1.2本系统涉及的知识点: 循环,javaGUI组件,函数,数组,分支等 2.功能设计 2.1算法设计 本系统需要实现的功能要求: 图一,数字按钮功能模块 图二,三个功能按钮模块

学生信息管理系统java课程设计(含源代码)

JAVA程序设计课程设计报告 课题: 学生信息管理系统 姓名: 学号: 同组姓名: 专业班级: 指导教师: 设计时间: 评阅意见: 评定成绩:

目录 一、系统描述 (2) 1、需要实现的功能 (3) 2、设计目的 (3) 二、分析与设计 (3) 1、功能模块划分 (3) 2、数据库结构描述 (4) 3、系统详细设计文档 (6) 4、各个模块的实现方法描述 (9) 5、测试数据及期望结果 (11) 三、系统测试 (16) 四、心得体会 (23) 五、参考文献 (24) 六、附录 (24)

一、系统描述 1、需求实现的功能 、录入学生基本信息的功能 学生基本信息主要包括:学号、姓名、年龄、出生地、专业、班级总学分,在插入时,如果数据库已经存在该学号,则不能再插入该学号。 、修改学生基本信息的功能 在管理员模式下,只要在表格中选中某个学生,就可以对该学生信息进行修改。 、查询学生基本信息的功能 可使用“姓名”对已存有的学生资料进行查询。 、删除学生基本信息的功能 在管理员模式下,只要选择表格中的某个学生,就可以删除该学生。 、用户登陆 用不同的登录权限可以进入不同的后台界面,从而实现权限操作。 、用户登陆信息设置 可以修改用户登陆密码 2、设计目的 学生信息管理系统是一个教育单位不可缺少的部分。一个功能齐全、简单易用的信息管理系统不但能有效地减轻学校相关工作人员的工作负担,它的内容对于学校的决策者和管理者来说都至关重要。所以学生信息管理系统应该能够为用户提供充足的信息和快捷的查询手段。但一直以来人们使用传统人工的方式管理文件档案、统计和查询数据,这种管理方式存在着许多缺点,如:效率低、保密性差、人工的大量浪费;另外时间一长,将产生大量的文件和数据,这对于查找、更新和维护都带来了不少困难。随着科学技术的不断提高,计算机科学日渐成熟,

java程序设计课程设计

武汉科技大学城市学院 课程设计报告 课程设计名称JAVA程序设计课程设计 题目ACM 院系信息工程学部 专业软件工程 班级15级3班 姓名洪汉山 指导教师于海平 2017 年 6 月23 日

课程设计评分表

JA V A编程课程设计指导书 学时:1周,学分:1 1.课程设计目的:JAVA编程课程设计属于软件开发类课程设计。该课程设计培养学生熟练应用当前主流的JAVA软件开发语言,检验软件的设计、编码与测试,具备较强的JAVA语言软件开发能力。 2.课程设计方式: (1)JAVA编程课程设计方式采取ACM测试的方式,利用所学的面向对象程序设计(JAVA)知识,培养学生具有分析应用问题的能力,能够独立完成应用程序的编制与调试工作。 (3)每个同学必须完成8-12道题,每题写出解题报告,解题报告内容:○1.题目标题○2.题目描述○3.解题思路○4.源码○5.小结 3.课程设计平台: eclipse或Myeclipse 4.课程设计考核方式 (1)学生独立提交软件设计作品和“课程设计报告书”,指导教师根据学生组提交的软件设计作品和“课程设计报告书”的质量,为学生组评定“优”“良”“中”“及格”或“不及格”; (2)根据各组学生所选题目的难易程度以及验收结果,为学生评定“优”“良”“中”“及格”或“不及格”。 “课程设计报告书”包括:课程设计项目名称,课程设计任务, 课程设计任务(功能)说明及功能模块图,数据库设计,各模块功能说明,使用的算法描述(如果需使用算法),各模块界面设计,各模块中关键代码段功能说明与代码行注释,测试说明,参考文献等。 5.参考文献 [1] 张思民. Java语言程序设计(第2版)[M].北京:清华大学出版社,2012.1 [2] 姜华. Java项目实战教程[M]. 北京:清华大学出版社,2012.9 [3] 陈喧. Java程序设计教程[M]. 北京:清华大学出版社,2011.5 [4] [美]Echel,B .Java编程思想(第四版)[M].北京:机械工业出版社,2007 [5] Michael Main. 数据结构:Java语言描述(第二版)(国外经典计算机科学教材)[M]. 北京:中国电力出版社,2007

(完整版)JAVA课程设计_基于mysql的学生信息管理系统毕业论文

1.目录 概述 (3) 一、课题介绍 (3) 二、目的和要求 (3) 三、任务计划 (3) 需求分析 (5) 一、学生管理系统的发展现状 (5) 二、系统功能分析 (5) 三、系统结构框图 (5) 数据库设计 (7) 一、创建数据表的结构 (7) 二、各表功能及其关系 (7) 系统模块功能的实现与界面设计 (8) 一、系统主要模块 (8) 二、欢迎界面 (9) 三、主菜单界面 (9) 四、子菜单 (10) 五、学生信息录入 (11) 六、学生信息查找 (12) 七、学生信息删除 (13) 八、学生信息修改 (14)

课程设计心得 (15) 一、程序结构设计培养 (15) 二、书写习惯养成 (15) 三、注意程序简洁 (15) 总结 (16) 参考文献 (17) 附录:项目源代码 (18) 一、数据库连接(D B C ONNECTION.JAVA) (18) 二、学生信息数据库管理(S TUDENT_D AO.JAVA) (18) 三、欢迎界面(W ELCOME.JAVA) (23) 四、主菜单界面(M ENU.JAVA) (24) 五、子菜单界面(S ON_M ENU.JAVA) (27) 六、添加功能(A DD_M ENU.JAVA) (31) 七、查找功能(F IND_M ENU.JAVA) (34) 八、删除功能(D ELET_M ENU.JAVA) (36) 九、修改功能(C HANGE_M ENU.JAVA) (38)

概述 一、课题介绍 本次课程设计要求实现一个面向学生信息的管理系统。学生信息系统是一个非常通用的管理系统。很多大、中、小学校都需要拥有自己的学生档案管理系统,以便对本校学生的基本信息和学习情况进行管理,另一方面,较完整的学校信息管理系统同样也需要有学生信息管理系统的支持。 由通用的学生相关数据分析可知,系统包括院系管理、学生基本信息管理、课程管理、学生从成绩管理等主要功能。 该系统要求使用JA V A和MySQL作为开发工具和数据库管理系统,因此,系统设计涉及系统功能设计、数据库设计和系统界面等几个方面内容。 二、目的和要求 2.了解JA V A语言的特点及使用的范围,掌握开发软件平台的搭建。 3.要求使用JA V A和MySQL开发一个学生信息管理系统,系统主要 功能如下: 1)院系信息管理 院系系统信息的录入,包括院系编号、院系名称等信息; 院系信息的修改、删除、查询。 2)学生基本信息管理 学生基本信息的录入,包括学号、姓名、性别、出生日期、所在院系、班级等信息;

JAVA程序设计-课程标准

《JAVA程序设计》课程标准 一、课程性质 《JAVA程序设计》是计算机类专业的核心课程,是计算机类专业的一门重要的专业基础课程,旨在培养学生程序设计技术和OOP 设计思想,涉及计算机体系结构、面向对象编程、多线程处理、网络通信以及程序设计等内容,通过本课程的学习,学生能够了解Java 语言特征、常见的Java 类库以及面向对象程序设计思想,掌握计算机程序的结构;掌握程序的开发过程;掌握常用数据结构及Java编程语言的语法;学会利用Java 语言编写面向网络应用的简单程序。为以后学习更高级的计算机相关课程,从软件开发相关工作奠定坚实的基础。 二、课程设计思路 1、内容选择 课程中所涵盖的教学内容是依据对行业及相关企业的调研、根据行业专家对IT制造专业所涵盖的岗位群进行的任务和职业能力分析,同时遵循高等职业学校学生的认知规律,紧密结合职业资格证书中相关考核要求。 2、教学法设计 根据本课程的教学目标要求和课程特点以及有关学情,选择适合于本课程的最优化教学法。综合考虑教学效果和教学可操作性等因

素,本课程选用讲授法、实验教学法及案例驱动法。 实验教学法:是指学生在教师的指导下,上机编写程序。 案例驱动法:是指由老师提出或设置某些问题,通过带领学生解决实际的案例教授知识点和类库的用法。 3、内容编排设计 教学内容是根据Java程序员的基本要求,结合职业技能证书考证,培养学生的实践动手能力,使学生在职业实践活动的基础上掌握知识,增强课程内容与职业岗位能力要求的相关性。 三、课程目标 通过本课程的学习,使学生具备Java程序设计语言相关知识、能够编写、调试Java程序,遵守良好的代码编写规范。能够使用Java 语言解决实际问题,能胜任Java程序开发、软件测试等工作任务。 1、知识目标 (1)掌握JAVA语言的基本语法; (2)掌握数组的使用; (3)掌握面向对象程序设计的基本方法; (4)学会处理程序运行中的异常; (5)学会使用Java常用的类,包括(String类,Java包装类,Math类,Java集合框架); (6)学会使用Java IO流读写文件; (7)会使用swing开发简单的图形界面; (8)了解多线程编程;

Java课程设计实验报告及全部源码流程图

课程设计 一、实验目的 1.加深对课堂讲授内容的理解,掌握解决实际应用问题时所应具有的查阅资料、技术标准和规范,以及软件编程、调试等能力,掌握面向对象的编程思想及Java语言程序设计的规律与技巧,为进一步学习web应用开发及今后从事专业工作打下基础。 2. 使用本学期学习的Java SE技术(也可以使用课堂教学中没有学习过的Java技术,但是应当以Java SE技术为主)完成多功能日历GUI程序的设计,使之具有如下基本功能:一年日历用12页显示,每页显示一个月的日历。日历可以按年或月前后翻动,能够显示当前的日期,可以为每页日历选择背景图片。 3.在完成基本功能的基础上发挥自己的想象力与创造力,使程序凸显出与众不同的特点与功能,形成本小组的特性色。 二、实验要求 1.问题描述准确、规范。 2.程序结构合理,调试数据准确、有代表性.。 3.界面布局整齐,人机交互方便。 4.输出结果正确。 5.正确撰写实验报告。 三、实验内容 编写一个GUI程序实现日历的功能。一年日历用12页显示,每页显示一个月的日历。日历可以按年或月前后翻动,能够显示当前的日期以及当前农历,可以为每页日历选择背景图片。可以实现显示时钟,时钟能进行整点报

时。可以实现备忘记事功能,能在每天添加、修改、删除记事等操作。 四、实验步骤 1.在上机实验前,小组成员进行选题讨论,确定小组感兴趣而又伸缩性强的题目多功能日历。 2.在第一次上机实验时讨论分工,分工明确之后,分头合作进行。 3.各成员完成自己的任务后,最后进行统筹合并,以及程序最后的优化。 4. 根据实验结果,写出合肥工业大学实验报告。实验报告应当包括:实验内容,程序流程图,类结构,程序清单,运行结果,以及通过上机取得的经验。 5.详细的上机实验步骤见任务分工及程序设计进度表。 五、实验结果 经过小组成员的共同努力,最终我们小组设计的多功能日历程序能够实现实验的基本要求——一年日历用12页显示,每页显示一个月的日历。日历可以按年或月前后翻动,能够显示当前的日期,可以为每页日历选择背景图片。另外,在完成基本要求的基础上,我们增添了显示农历、显示时钟、添加备忘录、修改备忘录等功能。整体程序运行流畅、功能齐全、符合操作习惯。 下面是程序运行效果截图: 日历主界面(可以实现每个月的日历,可以按年或按月前后翻动,能够显示当前日期,并能够选择背景图片):

Java课程设计报告书

华东交通大学理工学院课程设计报告书( 2010-- 2011年度第 2 学期) 所属课程名称 Java面向对象程序设计题目设计一个多功能计算器分院电信分院 专业班级 09信管<1>班 学号 20090210450106 蔡炜指导教师黄建华 2011年06月23日

华东交通大学理工学院 课程设计(论文)任务书专业09信管班级 <1>班姓名蔡炜 一、课程设计(论文)题目设计一个多功能计算器 二、课程设计(论文)工作:自 2011 年06 月 13日起至2011年 06 月 23日止。 三、课程设计(论文)的内容要求: 本应用程序继承自框架类(JFrame),此程序使用Frame布局管理器BorderLayout,将单行文本框加入到“North”区域,包含各种按钮的面板Panel p加入到”Center”区域。包含各种按钮的面板Panel p 采用4行5列的网格布局,然后将数字按钮和运算符按钮以及控制按钮添加到面板中。同时注册按钮事件监听器。如:Button b=new Button(); b.addActionListener(事件监听器); 事件监听器中的事件处理方法void actionPerformed(ActionEvent evt)完成主要的按钮事件的处理。事件处理分以下几种情况:数字按钮事件(”0”,”1”,”2”…”8”,”9”)、运算符按钮事件(”+”,”-“,”*”,”/”,”%”)、正负号按钮事件(”+/-“)、小数点按钮事件(”.”)、等号按钮事件(”=”)、求倒按钮事件(”1/x”)、清零按钮事件(“C”)。

在事件处理触发按钮事件时,要进一步分析,是重新开始计算时触发的按钮事件还是计算中间触发的按钮事件。 计算器完成的是一个数学表达式,如:3+2,所以可以采用一个链表(LinkedList类)来存储数字或字符,如3,+,2分别存储在链表中,最后运算时,可以一一取出来进行运算。 学生签名: ( ) 2011 年06 月 23 日 课程设计(论文)评阅意见 评阅人职称 20 年月日

java程序设计课程论文

j a v a程序设计课程论文 Document serial number【NL89WT-NY98YT-NC8CB-NNUUT-NUT108】

成绩 课程论文 题目:学生信息管理系统界面设计 课程名称: java程序设计 学生姓名:刘文璐 学生学号: 16 系别:电子工程学院 专业:通信工程 年级: 2013级 任课教师:窦飞 电子工程学院制

2015年12月 学生信息管理系统界面设计 学生:刘文璐 指导教师:窦飞 电子工程学院通信工程专业 1、引言 学生信息管理系统以计算机为工具,将管理人员从繁琐的数据计算中解脱出来,全面的提高了管理的效率和质量,使得管理更加的规范和严谨。 世界处于信息化时代,人类的生活随着科技的发展越来越好,特别是计算机的出现,更加丰富了多姿多彩的生活。作为新时代的大学生,要随时掌握和利用信息,辅之以科学文化知识,来适应社会发展的要求,将来为祖国奉献自己的一份力。计算机Java语言是一门理论与实践共存的课程,但是更侧重于实践,因此,我们要将实践教学与理论教学达到密切结合。 2、Eclipse的介绍 Eclipse 是一个开放的、基于的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。幸运的是,Eclipse 附带了一个标准的插件集,包括Java(Java Development Kit,)。 Eclipse 还包括插件开发环境(Plug-in Development Environment,PDE),这个组件主要针对希望扩展 Eclipse 的软件开发人员,因为它允许他们构建与Eclipse 环境无缝集成的工具。由于 Eclipse 中的每样东西都是插件,对于给Eclipse 提供插件,以及给用户提供一致和统一的集成开发环境而言,所有工具开发人员都具有同等的发挥场所。 3、学生信息管理系统界面设计方案制定 系统总体设计方案 有新生来报到,要逐个录入其信息,如:学生姓名,性别,,出生日期,国籍。要求设计链表类来实现,并统计学生人数。 文本界面为: 1.添加学生信息 2.删除学生信息

5_Java课程设计源代码

package zhouchuan; import java.applet.*; import java.awt.*; import java.awt.event.*; import https://www.360docs.net/doc/c13417778.html,.*; public class zhouchuan extends Applet implements ActionListener { AudioClip clip; Button buttonPlay, buttonLoop, buttonStop; public void init(){ try{ URL url=new URL("file:"+"F://ding.wav"); clip=getAudioClip(url);}catch(Exception e){ } buttonPlay=new Button("开始播放"); buttonLoop=new Button("循环播放"); buttonStop=new Button("停止播放"); buttonPlay.addActionListener(this); buttonStop.addActionListener(this); buttonLoop.addActionListener(this); add(buttonPlay); add(buttonLoop); add(buttonStop); } public void stop(){ clip.stop(); } public void actionPerformed(ActionEvent e){ if(e.getSource()==buttonPlay) clip.play(); else if(e.getSource()==buttonLoop) clip.loop();

JAVA课程设计报告

计算机科学技术与工程系 《Java课程设计》 课 程 设 计 报 告 题目:简易媒体播放器 班级:0633081 姓名:063308123郭伟 063308164张志朋 063308125靳浩兵063308168周小晨指导教师:陈红军、赵军民 设计日期:2010.01.11-15 专业:计算机网络技术

目录 1 、引言................................ 错误!未定义书签。 2 、设计依据 ........................... 3错误!未定义书签。 2.1设计平台 ..............................................................错误!未定义书签。 2.2设计思想 ..............................................................错误!未定义书签。 3、主要框架图、......................... 错误!未定义书签。 4、详细设计 (4) 5 、软件调试分析......................... 错误!未定义书签。 6 、源程序代码.......................... 6错误!未定义书签。 7、执行结果 (15) 8、学习心得 ........................... 15错误!未定义书签。 9、参考文献 ........................... 16错误!未定义书签。

1、引言: 旨在考察在经过一个学期的学习,对JA V A知识的理解与应用。同时把所学的理论知识用于实战编程,进而培养同学们的动手能力和团结协作的团队意识。综合应用java语言的相关知识,独立设计中型的Java应用程序。通过本课程设计,使学生巩固《JA V A课程设计》课程学习的内容,掌握工程软件设计的基本方法,强化上机动手能力,闯过编程关。 2、设计依据: 1、设计平台 Eclipse是开发源码项目,由于其开放源码,任何人都可以免费使用,并可以在此基础上开发各自的插件,eclipse不只作为一个JA V A IDE的开发平台,而且是作为一个平台框架,各种各样的插件都可以安装在它上面,从而形成各种各样的工具,它有开源软件,使用插件功能,可以完成比较复杂的开发等优点。此Java程序设计就是在Eclipse环境平台下开发的。 Java API文档: Java API文档包含了Java的大部分类,方面查询不熟悉的类,所以它是一款不错的帮助文档! 2、设计思想 根据一学期对JA V A知识的学习,在Eclipse平台下,导入JMF包通过不断查询API 文档,编写媒体播放器在现有类的基础上组织一个新类。有时,我们也将组织称作“包含”关系。播放器主要针对面向对象,并且实现序列化接口,多线程等知识。 对象的组织具有极大的灵活性。新类的“成员对象”通常设为“私有”(Private),使用这个类的客户程序员不能访问它们。这样一来,我们可在不干扰客户代码的前提下,从容地修改那些成员。也可以在“运行期”更改成员,这进一步增大了灵活性。后面要讲到的“继承”并不具备这种灵活性,因为编译器必须对通过继承创建的类加以限制。 由于继承的重要性,所以在面向对象的程序设计中,它经常被重点强调。作为新加入这一领域的程序员,或许早已先入为主地认为“继承应当随处可见”。沿这种思路产生的设计将是非常笨拙的,会大大增加程序的复杂程度。相反,新建类的时候,首先应考虑“组织”对象;这样做显得更加简单和灵活。利用对象的组织,我们的设计可保持清爽。一旦需要用到继承,就会明显意识到这一点。 3、程序主要框架图

java课程设计2013级大纲以及设计报告

珠海学院课程教学大纲 课程名称:java程序课程设计 适用专业: 2013级计算机科学与技术 课程类别:专业基础课 制订时间:2014年12月 计算机科学与技术系制

目录 1java程序课程设计教学大纲 2 java程序课程设计说明书 3 java程序课程设计报告(模板) 4 java程序课程设计成绩评定表 java程序课程设计教学大纲 (2011年制订,2014年修订) 一、课程编号: 二、前修课程:java程序设计 三、学分:2学分 四、学时: 32学时 五、课程性质与任务: 1.课程性质:《java程序课程设计》是吉林大学珠海学院计算机科学与技术系为本科生各专业开设的专业实践课。计算机科学与技术系本科生在完成《java 程序设计》课程学习后,通过本课程进入专业实践训练环节,其主要目的是使学生深入理解并实践在《java程序设计》课程中所学的有关知识,通过课程设计增强学生的实践动手能力,提高学生独立分析和解决实际问题的能力。培养学生配合完成任务的能力,为学生毕业后的实际工作打好基础。 课程设计是培养学生综合运用所学知识锻炼实践能力的重要环节,是对学生实际工作能力的具体训练和考察过程。Java语言的应用十分广泛,例如大型信息系统、通信、网络控制等。java课程设计对增强学生对基础知识的掌握和综合运用是非常必要,对后续许多专业课程的学习和实践训练都具十分重要的意义。 2.课程任务:本课程要求学生在学习了java基础编程的相关技术后,将课本中多个章节的编程技术灵活运用到一些复杂的综合例题中去,使学生了解应用问题

的分析方法和设计解决实际问题的具体过程,掌握应用java进行程序设计的基本规范和技巧,掌握面向对象编程的设计思想,重点掌握java的基本语法规则、输入输出方法、网络编程、多线程编程、小应用程序、数据库编程的综合应用。通过编程掌握调试java程序的基本技巧、模块化应用程序和测试运行复杂应用程序的基本流程。 六、课程教学基本要求提供足够多的程序设计选题,题目应覆盖面较为广泛,部分题目要具有开放性,要求每个学生根据自己的实际情况选择题目,经教师批准后即可进入实际工作阶段。 课程设计结束对每个学生进行验收,要求每个学生提交合格的课程设计报告,还要保证程序能够运行,能够讲清楚自己的工作。老师在检查过程中可针对程序提出问题,学生回答,若程序无法运行得到结果并且具有大量编译错误,而且对程序的内容无法正确解释,则实践老师可以根据实际情况给予评分为不及格,若程序可以运行,但完成的界面以及方法不够完善,则酌情扣分,若程序运行无问题,则提问回答不好的也要相应扣分。课程设计课程集中安排在第十一周。每个同学都要提交初期、中期和最后的文档,提交课程设计报告,要求在规定时间内提交文档。最后验收时,若文档不全,成绩受到一定影响。 七、学时分配表 2011年 12 月8日 java程序课程设计说明书

相关文档
最新文档