当前位置:文档之家› Java程序设计课程设计

Java程序设计课程设计

Java程序设计课程设计
Java程序设计课程设计

广东海洋大学

课程设计报告

课程名称Java程序设计课程设计

时间2013-2014学年第一学期

学院信息学院

计算机

在系

指导教师甘元驹

班级计科1111

学生姓名

学生学号2011116621126

目录 .............................................................. 错误!未定义书签。

一、项目说明 (3)

二、设计的思路和关键数据结构 (3)

三、在设计、实现和测试中发现的问题以及你的解决方案 (4)

四、测试 (4)

五、总结 (6)

六、程序代码 (6)

一、项目说明

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

这种平等和一致性并不仅限于 Java 开发工具。尽管 Eclipse 是使用Java 语言开发的,但它的用途并不限于 Java 语言;例如,支持诸如C/C++、COBOL、PHP等编程语言的插件已经可用,或预计将会推出。Eclipse 框架还可用来作为与软件开发无关的其他应用程序类型的基础,比如内容管理系统。

基于 Eclipse 的应用程序的一个突出例子是 IBM Rational Software Architect,它构成了 IBM Java 开发工具系列的基础。

二、设计的思路和关键数据结构

实现功能:

1、学生基本信息的增加

2、学生基本信息修改

3、学生基本信息删除

4、学生查询:对学生基本信息的查询

数据流图是在对系统分析调查的基础上,以系统的科学性、管理的合理性、技术的可行性角度出发,将信息处理功能和彼此之间的联系自顶向下、逐层分解,从逻辑上精确地描述应具有的数据加工功能、数据输入、数据输出、数据存储及数据的来源和去向。学生信息管理系统经过划分出各子系统及其各自的功能,以及相互联系,绘制出数据流图:

学生信息查询

学生信息修改

学生基本信息

学生信息添加

学生信息删除

系统数据流图

处理逻辑的描述

处理逻辑名称:查询信息处理

简述:学生对自己的基本信息和成绩进行查询

输入的数据流:输出结果

处理描述:根据管理人员输出结果使用户可以查询所需要的信息

输出的数据流:输入请求

处理逻辑名称:添加、修改信息处理

简述:通过请求结果对学生的基本信息和成绩进行添加、修改操作

输入的数据流:请求结果

处理描述:完善学生的基本信息和成绩的管理,使之更准确有效处理逻辑名称:删除信息处理

简述:通过请求结果对学生的基本信息和成绩删除操作

输入的数据流:删除请求

处理描述:对于错误信息或者失效信息进行删除操作

输出的数据流:删除结果

处理逻辑名称:录入学生信息

简述:将学生的基本信息录入该系统

处理描述:对学生的信息进行录入

三、在设计、实现和测试中发现的问题以及你的解决方案

1、在设计和实现时,最重要的是如何连接数据库,以及数据库连接的释放,解决办法是:在连接完数据库之后就要释放连接,否则很多数据库连接没释放会出现异常。

2、考虑到学生信息的非常多,解决办法是:所以用分页的效果查询学生的数据,很好的减少了内存的压力。

3、考虑到可以在excel表格浏览,解决办法是:写代码实现学生信息导出成excel表格。

四、测试

修改数据

删除数据

成绩查询

五、总结

通过本次课程设计,不仅让我更深入的了解JAVA这门学科,更使自己有了继续探索的兴趣。

对我来说,在之前的学习过程中没有能够很好的掌握JAVA语言的学习,在很多地方还有生疏和遗漏,并且在此次课程设计过程中也遇到困难不能自己独立解决。但是,通过这次程序设计,除了增加了自己的编程能力,提高了我对JAVA 的应用能力,同时我也深感“认真严谨”这个词的重要性,一点点小的马虎,便会导致整个程序不能正常运行。在今后的学习中,我将继续保持严谨的学习态度。与此同时,在同学的帮助下,让我体会到了相互学习的重要性,而更让人难以忘怀的是在热烈讨论问题时,那激情横溢的场面。总之,此次课程设计让我获益匪浅。

六、程序代码

6.1 主类代码:

/*主类代码*/

import javax.swing.*;

import java.awt.*;

import java.awt.event.*;

class MyPanel extends JPanel{

Image

img=Toolkit.getDefaultToolkit().getImage("C:/Users/Administrator/Desktop/1360077313824.gif" );

public void paint(Graphics g){

g.drawImage(img,0,0,this);

}

}

public class MainForm extends JFrame implements ActionListener//继承JFrame窗口类实现ActionListener

{

JMenu mSystem=new JMenu("系统");//菜单

JMenuItem mExit=new JMenuItem("退出");

JMenu mOperate=new JMenu("数据操作");

JMenuItem mAdd=new JMenuItem("添加");

JMenuItem mDel=new JMenuItem("删除");

JMenuItem mModify=new JMenuItem("修改");

JMenu mQuery=new JMenu("查询");

JMenuItem mName=new JMenuItem("按姓名查询");

JMenuItem mScore=new JMenuItem("按成绩查询");

JMenu mHelp=new JMenu("帮助");

JMenuItem mAbout=new JMenuItem("软件信息");

JMenuBar mBar=new JMenuBar();

MainForm()

{

super("学生成绩管理系统");//调用父类构造函数

setSize(875,583);

mSystem.add(mExit);

mOperate.add(mAdd);

mOperate.add(mDel);

mOperate.add(mModify);

mQuery.add(mName);

mQuery.add(mScore);

mHelp.add(mAbout);

mBar.add(mSystem);

mBar.add(mOperate);

mBar.add(mQuery);

mBar.add(mHelp);//添加控件

setJMenuBar(mBar);//菜单

mExit.addActionListener(this);

mAdd.addActionListener(this);

mDel.addActionListener(this);

mModify.addActionListener(this);

mName.addActionListener(this);

mScore.addActionListener(this);//注册监听

mAbout.addActionListener(this);

setContentPane(new MyPanel());

setVisible(true);

}

public void actionPerformed(ActionEvent ae)//判断按钮点击事件

{

if(ae.getSource()==mExit)

System.exit(0);

else if(ae.getSource()==mAbout)

JOptionPane.showMessageDialog(this,"学生成绩管理系统\n\n信息学院\n\n 计科1111\n\n许钦百\n\n2013年12月","软件信息",https://www.doczj.com/doc/4d15751893.html,RMA TION_MESSAGE);

else if(ae.getSource()==mAdd)

new AddForm().setVisible(true);

else if(ae.getSource()==mDel)

new DeleteForm().setVisible(true);

else if(ae.getSource()==mModify)

new ModifyForm().setVisible(true);

else if(ae.getSource()==mName)

new NameQueryForm().setVisible(true);

else if(ae.getSource()==mScore)

new ScoreQueryForm().setVisible(true);

}

public static void main(String[] args) {

new MainForm();

}

}

6.2 修改数据:

/*修改数据*/

import javax.swing.*;

import java.awt.*;

import java.awt.event.*;

import java.sql.*;

public class ModifyForm extends JFrame implements ActionListener

{

JLabel labName=new JLabel("姓名:");

JLabel labDate=new JLabel("学号:");

JLabel labScore=new JLabel("成绩:");

JTextField txtName=new JTextField(20);

JTextField txtDate=new JTextField(18);

JTextField txtScore=new JTextField(20);

JButton btnModify=new JButton("修改");

JButton btnCancel=new JButton("取消");

JButton btnQuery=new JButton("查询");

JPanel pan=new JPanel();

JPanel pan1=new JPanel();

JPanel pan2=new JPanel();

JPanel pan3=new JPanel();

JPanel pan4=new JPanel();

Connection con;

Statement sql;

ResultSet rs;

ModifyForm()

{

super("修改数据");

setSize(400,300);

pan1.add(labName);

pan1.add(txtName);

pan2.add(labDate);

pan2.add(txtDate);

pan3.add(labScore);

pan3.add(txtScore);

pan4.add(btnQuery);

pan4.add(btnModify);

pan4.add(btnCancel);

pan.setLayout(new GridLayout(3,1));

pan.add(pan1);

pan.add(pan2);

pan.add(pan3);

getContentPane().add(pan,"Center");

getContentPane().add(pan4,"South");

btnQuery.addActionListener(this);

btnModify.addActionListener(this);

btnCancel.addActionListener(this);

btnModify.setEnabled(false);

txtDate.setEditable(false);

txtScore.setEditable(false);

setVisible(true);

txtName.requestFocus();

}

public void actionPerformed(ActionEvent ae){

if(ae.getSource()==btnCancel){

dispose();

} else if(ae.getSource()==btnQuery){

try{

Class.forName("net.sourceforge.jtds.jdbc.Driver");}

catch(ClassNotFoundException e){

}

try{con=DriverManager.getConnection("jdbc:jtds:sqlserver://localhost:1433/学生成绩管理系统;user=sa;password=123");

sql=con.createStatement();

rs=sql.executeQuery("select * from 成绩表where 姓名='"+txtName.getText()+"'");

if(rs.next()){

txtName.setText(rs.getString("姓名"));

txtScore.setText(new Integer(rs.getInt("成绩")).toString());

txtDate.setText(rs.getString("学号").toString());

btnModify.setEnabled(true);

txtDate.setEditable(true);

txtScore.setEditable(true);

}else{

System.out.println("不存在该记录! ");

btnModify.setEnabled(false);

txtName.setText("");

txtScore.setText("");

txtDate.setText("");

txtDate.setEditable(false);

txtScore.setEditable(false);

}

}catch(SQLException e){

}

}else if(ae.getSource()==btnModify){

try{

System.out.println("Update 成绩表set 学号='"+txtDate.getText()+"',成绩="+txtScore.getText()+" where 姓名='"+txtName.getText()+"'");

sql.executeUpdate("Update 成绩表set 学号='"+txtDate.getText()+"',成绩="+txtScore.getText()+" where 姓名='"+txtName.getText()+"'");

System.out.println("记录修改完毕!");

btnModify.setEnabled(false);

txtName.setText("");

txtScore.setText("");

txtDate.setText("");

txtDate.setEditable(false);

txtScore.setEditable(false);

con.close();

}catch(SQLException e){

}

}

}

public static void main(String[] args) {

new ModifyForm();

}

}

6.3 删除数据:

/*删除数据*/

import javax.swing.*;

import java.awt.*;

import java.awt.event.*;

import java.sql.*;

public class DeleteForm extends JFrame implements ActionListener

{

JLabel labName=new JLabel("姓名:");

JLabel labDate=new JLabel("学号:");

JLabel labScore=new JLabel("成绩:");

JTextField txtName=new JTextField(20);

JTextField txtDate=new JTextField(18);

JTextField txtScore=new JTextField(20);

JButton btnDelete=new JButton("删除");

JButton btnCancel=new JButton("取消");

JButton btnQuery=new JButton("查询");

JPanel pan=new JPanel();

JPanel pan1=new JPanel();

JPanel pan2=new JPanel();

JPanel pan3=new JPanel();

JPanel pan4=new JPanel();

Connection con;

Statement sql;

ResultSet rs;

DeleteForm()

{

super("删除数据");

setSize(400,300);

pan1.add(labName);

pan1.add(txtName);

pan2.add(labDate);

pan2.add(txtDate);

pan3.add(labScore);

pan3.add(txtScore);

pan4.add(btnQuery);

pan4.add(btnDelete);

pan4.add(btnCancel);

pan.setLayout(new GridLayout(3,1));

pan.add(pan1);

pan.add(pan2);

pan.add(pan3);

getContentPane().add(pan,"Center");

getContentPane().add(pan4,"South");

btnQuery.addActionListener(this);

btnDelete.addActionListener(this);

btnCancel.addActionListener(this);

btnDelete.setEnabled(false);//取消删除按钮的功能txtDate.setEditable(false);

txtScore.setEditable(false);

setVisible(true);

txtName.requestFocus();

}

public void actionPerformed(ActionEvent ae)

{

if(ae.getSource()==btnCancel)

{

dispose();

}

else if(ae.getSource()==btnQuery){ //实现查询功能

try

{

Class.forName("net.sourceforge.jtds.jdbc.Driver");}

catch(ClassNotFoundException e){

}

try{con=DriverManager.getConnection("jdbc:jtds:sqlserver://localhost:1433/学生成绩管理系统;user=sa;password=123");

sql=con.createStatement();

rs=sql.executeQuery("select * from 成绩表where 姓名='"+txtName.getText()+"'");

if(rs.next())

{

txtName.setText(rs.getString("姓名"));

txtScore.setText(new Integer(rs.getInt("成绩")).toString());

txtDate.setText(rs.getString("学号").toString());

btnDelete.setEnabled(true);//使删除按钮功能实现

txtDate.setEditable(true);

txtScore.setEditable(true);

}else{

System.out.println("不存在该记录!");

btnDelete.setEnabled(false);

txtName.setText("");

txtScore.setText("");

txtDate.setText("");

txtDate.setEditable(false);

txtScore.setEditable(false);

}

}catch(SQLException e){

}

}

else if(ae.getSource()==btnDelete) //实现删除功能

{

try

{

System.out.println("Update 成绩表set 学号='"+txtDate.getText()+"',成绩="+txtScore.getText()+" where 姓名='"+txtName.getText()+"'");

sql.executeUpdate("DELETE FROM 成绩表where 姓名='"+txtName.getText()+"'");

System.out.println("记录删除完毕!");

btnDelete.setEnabled(false);

txtName.setText("");

txtScore.setText("");

txtDate.setText("");

txtDate.setEditable(false);

txtScore.setEditable(false);

con.close();

}

catch(SQLException e){

}

}

}

public static void main(String[] args)

{

new DeleteForm();

}

}

6.4 添加数据:

/*添加数据*/

import javax.swing.*;

import java.awt.*;

import java.awt.event.*;

import java.sql.*;

public class AddForm extends JFrame implements ActionListener {

JLabel labName=new JLabel("姓名:");

JLabel labDate=new JLabel("学号:");

JLabel labScore=new JLabel("成绩:");

JTextField txtName=new JTextField(20);

JTextField txtDate=new JTextField(18);

JTextField txtScore=new JTextField(20);

JButton btnAdd=new JButton("添加");

JButton btnCancel=new JButton("取消");

JPanel pan=new JPanel();

JPanel pan1=new JPanel();

JPanel pan2=new JPanel();

JPanel pan3=new JPanel();

JPanel pan4=new JPanel();

Connection con;

Statement sql;

ResultSet rs;

AddForm()

{

super("添加数据");

setSize(400,300);

pan1.add(labName);

pan1.add(txtName);

pan2.add(labDate);

pan2.add(txtDate);

pan3.add(labScore);

pan3.add(txtScore);

pan4.add(btnAdd);

pan4.add(btnCancel);

pan.setLayout(new GridLayout(3,1));

pan.add(pan1);

pan.add(pan2);

pan.add(pan3);

getContentPane().add(pan,"Center");

getContentPane().add(pan4,"South");

btnAdd.addActionListener(this);

btnCancel.addActionListener(this);

btnAdd.setEnabled(true);

txtDate.setEditable(true);

txtScore.setEditable(true);

setVisible(true);

txtName.requestFocus();

}

public void actionPerformed(ActionEvent ae)

{

String recode,insert1,学号,姓名;

int 成绩;

if(ae.getSource()==btnCancel)

{

this.dispose();

}

else if(ae.getSource()==btnAdd)

{

try

{

Class.forName("net.sourceforge.jtds.jdbc.Driver");

}

catch(ClassNotFoundException e){

}

try{

con=DriverManager.getConnection("jdbc:jtds:sqlserver://localhost:1433/学生成绩管理系统;user=sa;password=123");

sql=con.createStatement();

姓名=txtName.getText();

学号=txtDate.getText();

成绩=Integer.parseInt(txtScore.getText());

recode="("+"'"+姓名+"'"+","+"'"+学号+""+"',"+成绩+")";

insert1="INSERT INTO 成绩表V ALUES "+recode;

sql.executeUpdate(insert1);

System.out.println("记录添加完毕!");

btnAdd.setEnabled(false);

txtName.setText("");

txtScore.setText("");

txtDate.setText("");

con.close();

}

catch(SQLException e){

}

}

}

public static void main(String[] args)

{

new AddForm();

}

}

6.5 按姓名查询数据:

/*按姓名查询数据*/

import javax.swing.*;

import java.awt.*;

import java.awt.event.*;

import java.sql.*;

public class NameQueryForm extends JFrame implements ActionListener {

JLabel labName=new JLabel("姓名:");

JLabel labDate=new JLabel("学号:");

JLabel labScore=new JLabel("成绩:");

JTextField txtName=new JTextField(20);

JTextField txtDate=new JTextField(18);

JTextField txtScore=new JTextField(20);

JButton btnCancel=new JButton("取消");

JButton btnQuery=new JButton("查询");

JPanel pan=new JPanel();

JPanel pan1=new JPanel();

JPanel pan2=new JPanel();

JPanel pan3=new JPanel();

JPanel pan4=new JPanel();

Connection con;

Statement sql;

ResultSet rs;

NameQueryForm()

{

super("按姓名查询");

setSize(400,300);

pan1.add(labName);

pan1.add(txtName);

pan2.add(labDate);

pan2.add(txtDate);

pan3.add(labScore);

pan3.add(txtScore);

pan4.add(btnQuery);

pan4.add(btnCancel);

pan.setLayout(new GridLayout(3,1));

pan.add(pan1);

pan.add(pan2);

pan.add(pan3);

getContentPane().add(pan,"Center");

getContentPane().add(pan4,"South");

btnQuery.addActionListener(this);

btnCancel.addActionListener(this);

txtDate.setEditable(false);

txtScore.setEditable(false);

setVisible(true);

txtName.requestFocus();

}

public void actionPerformed(ActionEvent ae){

if(ae.getSource()==btnCancel){

dispose();

} else if(ae.getSource()==btnQuery){

try{

Class.forName("net.sourceforge.jtds.jdbc.Driver");}

catch(ClassNotFoundException e){

}

try{con=DriverManager.getConnection("jdbc:jtds:sqlserver://localhost:1433/学生成绩管理系统;user=sa;password=123");

sql=con.createStatement();

rs=sql.executeQuery("select * from 成绩表where 姓名='"+txtName.getText()+"'");

if(rs.next()){

txtName.setText(rs.getString("姓名"));

txtScore.setText(new Integer(rs.getInt("成绩")).toString());

txtDate.setText(rs.getString("学号").toString());

}else{

System.out.println("不存在该记录! ");

txtName.setText("");

txtScore.setText("");

txtDate.setText("");

txtName.requestFocus();

}

}catch(SQLException e){

}

}

}

public static void main(String[] args) {

new NameQueryForm();

}

}

6.6 按成绩查询数据:

/*按成绩查询数据*/

import javax.swing.*;

import java.awt.*;

import java.awt.event.*;

import java.sql.*;

import javax.swing.table.DefaultTableModel;

import javax.swing.table.JTableHeader;

public class ScoreQueryForm extends JFrame implements ActionListener

{

JLabel labScore=new JLabel("请输入成绩:");

JTextField txtScore=new JTextField(10);

JButton btnQuery=new JButton("查询");

JPanel pan1=new JPanel();

JPanel pan2=new JPanel();

String []str={"姓名","学号","成绩"};

Object[][] data=new Object[10][3];

JTable table=new JTable(data,str);

JTableHeader head=table.getTableHeader();

JScrollPane jsp=new JScrollPane(table); //滚动

Connection con;

Statement sql;

ResultSet rs;

ScoreQueryForm()

{

super("按成绩查询");

setSize(400,300);

pan1.add(labScore);

pan1.add(txtScore);

pan1.add(btnQuery); //以上3条在第一个面板加入内容

getContentPane().add(pan1,"North"); //把面板1放到窗口顶部

pan2.setLayout(new BorderLayout());

pan2.add(head,"North"); //将表头放在面板2的顶部

pan2.add(jsp,"Center"); //表格放在pan2中间

getContentPane().add(pan2,"Center");//把面板2整体加入到主窗口中

btnQuery.addActionListener(this); //增加查询按钮的监视器

setVisible(true);

}

public void actionPerformed(ActionEvent ae){

if(ae.getSource()==btnQuery){

int i,j,row;

try{

Class.forName("net.sourceforge.jtds.jdbc.Driver");

}

catch(ClassNotFoundException e){

}

try{

con=DriverManager.getConnection("jdbc:jtds:sqlserver://localhost:1433/学生成绩管理系统;user=sa;password=123");

sql=con.createStatement();

rs=sql.executeQuery("select COUNT(*) as rowSOCRE from 成绩表where 成绩="+txtScore.getText()); //寻找相同成绩的行数

rs.next(); //去掉头

System.out.println("1");

row=rs.getInt("rowSOCRE");

System.out.println("2");

rs.close();

data=new Object[row][3];

rs=sql.executeQuery("select * from 成绩表where 成绩="+txtScore.getText());

i=0;j=0;

while(rs.next()){

data[i][j++]=rs.getString("姓名");

data[i][j++]=rs.getString("学号");

data[i][j]=new Integer(rs.getInt("成绩"));//将数据库中查询到的信息保存到data中

i++;j=0;

}

pan2.removeAll();

getContentPane().remove(pan2);

table=new JTable(data,str);

pan2.setLayout(new BorderLayout());

head=table.getTableHeader();

jsp=new JScrollPane(table);

pan2.add(head,"North");

pan2.add(jsp,"Center");

getContentPane().add(pan2,"Center");

this.validate();

con.close();

}catch(SQLException e){

}

}

}

public static void main(String[] args) {

new ScoreQueryForm();

} }

(完整版)java课程设计——客户管理系统源代码

完整代码: 1.客户类(class person): package客户管理系统; public class Person { private int num; private String name; private String address; private String sex; public Person(){} public Person(int num,String name,String address,String sex){ this.num=num; https://www.doczj.com/doc/4d15751893.html,=name; this.address=address; this.sex=sex; } public void setNum(int num){ this.num=num; } public int getNum(){ return num; } public void setName(String name){ https://www.doczj.com/doc/4d15751893.html,=name; } public String getName(){ return name; } public void setAddress(String address){ this.address=address; } public String getAddress(){ return address;

} public void setSex(String sex){ this.sex=sex; } public String getSex(){ return sex; } public String toString() { return"\t"+num+"\t"+name+"\t"+address+"\t"+sex; } } 2.菜单类(class Menu): package客户管理系统; import java.util.Scanner; public class Menu { Scanner input=new Scanner(System.in); public Menu() {} public int showMenu() { System.out.println("***********************************" ); System.out.println("客户管理系统"); System.out.println("===================================" ); System.out.println("【1】增加"); System.out.println("【2】删除"); System.out.println("【3】修改"); System.out.println("【4】查询"); System.out.println("【5】浏览"); System.out.println("【6】退出"); System.out.println("***********************************" ); System.out.print("请选择操作:");

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

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

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

Java程序设计实例教程考试题

Java程序设计练习题 一、选择题 1、为使Java程序独立于平台,Java虚拟机把字节码与各个操作系统及硬件( A ) A)分开B)结合 C)联系D)融合 2、Java语言与C++语言相比,最突出的特点是( C ) A)面向对象B)高性能 C)跨平台D)有类库 3、下列Java源程序结构中前三种语句的次序,正确的是(D) A)import,package,public class B)import必为首,其他不限 C)public class,package,import D),import,public class 4、在JDK目录中,Java程序运行环境的根目录是( A ) A)bin B)demo C)lib D)jre 5、下列运算符中属于关系运算符的是(A ) A)== B).= C)+= D)-= 6、下列布尔变量定义中,正确并且规范的是( B ) A)BOOLEAN canceled=false; B)boolean canceled=false; C)boolean CANCELED=false; D)boolean canceled=FALSE; 7、下列关键字中可以表示常量的是( A ) A)final B)default C)private D)transient 8、下列运算符中,优先级最高的是( A ) A)++ B)+ C)* D)> 9、Java中的基本数据类型int在不同的操作系统平台的字长是( B ) A)不同的B)32位 C)64位D)16位

10、给一个short类型变量赋值的范围是( C ) A)-128 至 +127 B)-2147483648至 +2147483647 C)-32768至 +32767 D)-1000至 +1000 11、下列运算中属于跳转语句的是( D ) A)try B)catch C)finally D)break 12、switch语句中表达式(expression)的值不允许用的类型是( C ) A)byte B)int C)boolean D)char 13、下列语句中,可以作为无限循环语句的是( A ) A)for(;;) {} B)for(int i=0; i<10000;i++) {} C)while(false) {} D)do {} while(false) 14、下列语句中执行跳转功能的语句是( C ) A)for语句B)while语句 C)continue语句D)switch语句 15、下列表达式中,类型可以作为int型的是( C ) A)“abc”+”efg”B)“abc”+’efg’ C)‘a’+’b’D)3+”4” 17、数组中各个元素的数据类型是( A ) A)相同的B)不同的 C)部分相同的D)任意的 18、在Java语言中,被成为内存分配的运算符是( A ) A)new B)instance of C)[] D)() 19、接口中,除了抽象方法之外,还可以含有( B ) A)变量B)常量 C)成员方法D)构造方法 20、下列能表示字符串s1长度的是( A ) A)s1.length()B)s1.length C)s1.size D)s1.size() 21、StringBuffer类字符串对象的长度是( C ) A)固定B)必须小于16个字符 C)可变D)必须大于16个字符 22、构造方法名必须与______相同,它没有返回值,用户不能直接调用它,只能通过new调用。( A ) A)类名B)对象名 C)包名D)变量名 23、子类继承了父类的方法和状态,在子类中可以进行的操作是( D ) A)更换父类方法B)减少父类方法 C)减少父类变量D)添加方法 24、String、StingBuffer都是______类,都不能被继承。( C )

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课程设计简单实现

目录 一、绪论 (1) 1.1关键技术介绍 (1) 1.1.1JAVA技术 (1) 1.1.2SQL数据库 (1) 二、需求分析 (2) 三、系统概要设计: (3) 3.1问题描述 (3) 3.2要求 (3) 3.3数据库设计 (3) 四、系统详细设计 (5) 4.1新员工信息录入 (5) 4.2显示员工信息 (7) 4.3修改员工信息 (8) 4.4查询员工信息 (10) 4.5删除员工信息 (13) 4.6员工信息排序 (15) 4.7员工信息统计 (16) 4.8注销 (17) 五、系统测试 (18) 5.1系统登录 (18) 5.2系统主界面.................................. 错误!未定义书签。 5.3新员工信息录入.............................. 错误!未定义书签。 5.4显示员工信息................................ 错误!未定义书签。 5.5修改员工信息................................ 错误!未定义书签。 5.6查询员工信息................................ 错误!未定义书签。 5.7删除员工信息................................ 错误!未定义书签。 5.8排列系统.................................... 错误!未定义书签。 5.9统计界面.................................... 错误!未定义书签。

5.10注销....................................... 错误!未定义书签。 六、总结 (19) 八、附录.......................................... 错误!未定义书签。

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

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

Java语言程序设计基础教程习题解答

《Java语言程序设计基础教程》练习思考题参考答案

第1章 Java程序设计概述 练习思考题 1、 Java运行平台包括三个版本,请选择正确的三项:() A. J2EE B. J2ME C. J2SE D. J2E 解答:A,B,C 2、 Java JDK中反编译工具是:() A. javac B. java C. jdb D. javap 解答:D 3、 public static void main方法的参数描述是:() A. String args[] B. String[] args C. Strings args[] D. String args 解答:A,B 4、在Java中,关于CLASSPATH环境变量的说法不正确的是:() A. CLASSPATH一旦设置之后不可修改,但可以将目录添加到该环境变量中。 B. 编译器用它来搜索各自的类文件。 C. CLASSPATH是一个目录列表。 D. 解释器用它来搜索各自的类文件。 解答:A 5、编译Java Application源文件将产生相应的字节码文件,扩展名为() A. .java B. .class C. .html D. .exe 解答:B 6、开发与运行Java程序需要经过的三个主要步骤为____________、____________和____________。 7、如果一个Java Applet源程序文件只定义有一个类,该类的类名为MyApplet,则类MyApplet必须是______类的子类并且存储该源程序文件的文件名为______。 8、如果一个Java Applet程序文件中定义有3个类,则使用Sun公司的JDK编译器编译该源程序文件将产生______个文件名与类名相同而扩展名为______的字节码文件。 9、开发与运行Java程序需要经过哪些主要步骤和过程? 10、Java程序是由什么组成的?一个程序中必须要有public类吗?Java源文件的命名规则是怎么样的? 11、编写一个简单的Java应用程序,该程序在命令行窗口输出两行文字:“你好,很高兴学习Java”和“We are students”。

学生信息管理系统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课程设计银行管理系统

大连科技学院java程序设计课程设计(B) 题目银行取款管理系统 学生姓名姚伟奇专业班级计算机(Z)13-1 指导教师李红职称讲师 所在单位信息科学系软件工程教研室 教学部主任王立娟 完成日期 2016年9月30日 课程设计报告单

综合评定: (优、良、中、及格、不及格)指导教师签字:2016年9月30日《java程序设计课程设计(B)》任务书 一、课程设计任务及要求: 任务:针对小型信息管理系统或若干综合性设计题目,选择一种软件开发模型,完成从需求分析、系统设计、系统实现,软件测试的全过程。 要求: (1) 根据软件系统开发的一般原则,完成相应系统的功能设计,完成主要功能模块的程序实现并进行测试训练,给出代码运行结果和相应的设计文档。可以分组进行,但所有学生必须经历整个系统的开发全过程,以便加深对系统开发全过程的认识。 (2)提交课程设计报告。 (3)指标: 要求完成课程设计报告3000字以上(约二十页);完成所设计的题目,设计题目的语句行数的和在200行语句以上。 二、工作量 2周(10个工作日)时间 三、计划安排 第1个工作日:查找相关资料、书籍,阅读示例文档,选择题目。 第2个工作日-第4个工作日:设计程序结构、模块图。 第5个工作日-第9个工作日:完成程序的编码,并且自己调试、测试。穿插进行课程设计报告的撰写。 第10个工作日:上交课程设计报告,由教师检查软件测试效果、检查课程设计报告,给出学生成绩。

指导教师签字:2016年9月19日

目录 题目:.................................................... 错误!未定义书签。 1.需求分析............................................ 错误!未定义书签。 2.概要设计............................................ 错误!未定义书签。 3.详细设计............................................ 错误!未定义书签。 4.编码................................................ 错误!未定义书签。 5.调试分析............................................ 错误!未定义书签。 6.测试结果及运行效果.................................. 错误!未定义书签。 7.系统开发所用到的技术................................ 错误!未定义书签。 8.课程设计总结........................................ 错误!未定义书签。参考文献................................................. 错误!未定义书签。5 附录全部代码............................................. 错误!未定义书签。

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程序设计实用教程_习题解答

习题 1 1.James Gosling 2.需3个步骤: 1)用文本编辑器编写源文件 2)使用Java编译器(javac.exe)编译源文件,得到字节码文件。 3)使用java解释器(java.exe)来解释执行字节码文件。 3.D:\JDK 1) 设置path 对于Windows 2000/2003/XP,右键单击“我的电脑”,在弹出的快捷菜单中选择“属性”,弹出“系统特性”对话框,再单击该对话框中的“高级选项”,然后单击“环境变量”按钮,添加系统环境变量path。如果曾经设置过环境变量path,可单击该变量进行编辑操作,将需要的值d:\jdk\bin加入即可(注意:修改系统环境变量path后要重新打开DOS窗口编译)。或在DOS窗口输入命令行: set path=d:\jdk\bin(注意:用此方法修改环境变量每次打开DOS窗口都需要输入该命令行重新进行设置)。 2) 设置classpath 对于Windows 2000/2003/XP,右键单击“我的电脑”,在弹出的快捷菜单中选择“属性”,弹出“系统特性”对话框,再单击该对话框中的“高级选项”,然后单击“环境变量”按钮,添加系统环境变量classpath。如果曾经设置过环境变量classpath,可单击该变量进行编辑操作,将需要的值d:\jdk\jre\lib\rt.jar;.;加入即可。或在DOS窗口输入命令行: set classpath= d:\jdk\jre\lib\rt.jar;.;。 4.(B)javac 5.Java源文件的扩展名是”.java”,Java字节码的扩展名是”.class” 6.Java应用程序主类的main申明(D)public static void main(String args[])

学生信息管理系统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(源代码)连连看课程设计

目录 第一章引言 (2) 1.背景 (2) 1.1课程设计内容 (3) 第二章系统介绍 (4) 1.连连看游戏规则 (4) 1.1游戏基本规则 (4) 1.2操作规则 (4) 1.3胜利和失败 (4) 2.游戏流程图分析 (4) 第三章系统游戏设计 (7) 1.系统分析 (7) 1.1游戏系统需求分析 (7) 1.2系统开发及运行环境 (7) 1.3系统功能主要要求 (7) 2.系统总体结构 (8) 3. 系统各模块功能介绍 (8) 第四章系统的具体实现 (9) 1.系统主要运行界面 (9) 1.1运行界面 (9) 1.2执行界面,进入游戏正常运行 (9) 1.3时间到界面 (10) 1.4赢家界面 (11) 1.5进度条界面 (12) 图4.5程序运行进度条 (12) 2.游戏实现代码 (12) 2.1主面板内所需要的组件的声明 (12) 2.2填充一个矩形框,进行显示时间 (12) 2.3主面板及各组件初始化 (13) 2.4创建时间对象,每隔100毫秒刷新一次 (13) 2.5分数代码。 (13) 3.消除图片具体情况 (14) 3.1两次点击相同图片相邻 (14)

3.2水平方向消去算法 (14) 3.3竖直方向消去算法 (15) 第五章程序清单 (16) 第六章结束语 (24) 第七章参考文献 (25) 第一章引言 1.背景 游戏“连连看”顾名思义就是找出相关联的东西,这个连连看在网上基本是用在小游戏中,就是找出相同的两样东西,在一定的规则之内可以做为相关联处理。“连连看”的发展经历了从桌面游戏、在线游戏、社交游戏三个过程。 游戏“连连看”是源自台湾的桌面小游戏,自从流入大陆以来风靡一时,也吸引众多程序员开发出多种版本的“连连看”。这其中,顾方编写的“阿达连连看”以其精良的制作广受好评,这也成为顾方“阿达系列软件”的核心产品。并于2004年,取得了国家版权局的计算机软件著作权登记证书。 随着Flash应用的流行,网上出现了多种在线Flash版本“连连看”。如“水晶连连看”、“果蔬连连看”等,流行的“水晶连连看”以华丽界面吸引了一大批的女性玩家。 2008年,随着社交网络的普及和开放平台的兴起,“连连看”被引入了社交网络。“连连看”与个人空间相结合,被快速的传播,成为一款热门的社交游戏,其中以开发者Jonevey在Manyou开放平台上推出的“宠物连连看”最为流行。 网络小游戏、网页游戏越来越受网民欢迎,除了玩的方法简单外(不像其他游戏还需要注册下载繁琐过程),很多游戏不乏经典。连连看游戏就是典型。 不管走到哪个网页游戏网站,连连看游戏总是排在受玩家欢迎排名的前5位,休闲、趣味、益智是连连看玩不厌的精华,且不分男女老少、工薪白领,是一款适合大众的经典网络、单机休闲小游戏。 游戏《连连看》,只要将相同的两张牌用三根以内的直线连在一起就可以消除,规则简单容易上手。游戏速度节奏快,画面清晰可爱,适合细心的玩家。丰富的道具和公共模式的加入,增强游戏的竞争性。多样式的地图,使玩家在各个游戏水平都可以寻找到挑战的目标,长期地保持游戏的新鲜感。 该游戏由30张不同的图片组成,游戏开始将会出现30张随机组合的图片,在规则下点击两张相同的图片后图片将会消失。图片全部消完为游戏成功。游戏还将设置退出,再来一局的按钮,并实现该功能,方便用户进行操作。

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课程设计实验报告及全部源码流程图

课程设计 一、实验目的 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英汉电子字典课程设计源代码

用户需求分析: 英汉词典作为一个常用的学习工具,是我们经常要使用的。该系统能完成一个简单的电子词的功能。该系统主要用于实现英汉互译的功能,系统拥有自己的数据库。 1.英译汉功能:我们可以先选择让系统进行英译汉功能,然后在查找框中输入想要查询的英文单词,系统将自动在数据库中查找匹配记录并给出相对应的汉语意思。 2.汉译英功能:我们可以在系统中选择汉译英功能,然后在查找框中输入想要查询的汉语意思,系统将自动在数据库中查找匹配记录并给出相对应的英文单词 3.词汇的添加功能:用户可以添加词库没有的单词及其解释。添加成功后该单词将在次库保存,以便下次查询。 4.词汇的修改功能;用户可以实现对词库中已有单词及其解释的修改。修改后的结果将保存在词库中。 5.词汇的删除功能;用户可自行删除词库中已有的单词,同时次单词的解释也将被一同删除。 6.其他功能:此外,系统还具有帮助和关于等功能,用来辅助用户更方便简洁的使用电子词典。 package dianzicidian; import java.awt.*; import https://www.doczj.com/doc/4d15751893.html,.*; import java.sql.*; import java.awt.event.*; import javax.swing.JOptionPane; import java.io.*; import sun.audio.*; class dzcd extends Frame implements ActionListener { MenuBar menubar=new MenuBar();//菜单 Menu fileMenu,editMenu,helpMenu; MenuItem fileenglish,filechinese,exit,editAdd,editmod,editDel; TextField inputtext; TextArea txt; Label label1,label2; Button btn1,btnsound; Panel p,p1,p2,p3; dzcd() { super("电子词典"); setBounds(200,300,350,400); setMenuBar(menubar);

5_Java课程设计源代码

package zhouchuan; import java.applet.*; import java.awt.*; import java.awt.event.*; import https://www.doczj.com/doc/4d15751893.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课程设计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程序课程设计说明书

相关主题
文本预览
相关文档 最新文档