久久99精品久久久久久琪琪,久久人人爽人人爽人人片亞洲,熟妇人妻无码中文字幕,亚洲精品无码久久久久久久

Java程序設(shè)計(jì)課程設(shè)計(jì)學(xué)生考勤系統(tǒng)

時(shí)間:2019-05-14 10:45:39下載本文作者:會(huì)員上傳
簡(jiǎn)介:寫寫幫文庫(kù)小編為你整理了多篇相關(guān)的《Java程序設(shè)計(jì)課程設(shè)計(jì)學(xué)生考勤系統(tǒng)》,但愿對(duì)你工作學(xué)習(xí)有幫助,當(dāng)然你在寫寫幫文庫(kù)還可以找到更多《Java程序設(shè)計(jì)課程設(shè)計(jì)學(xué)生考勤系統(tǒng)》。

第一篇:Java程序設(shè)計(jì)課程設(shè)計(jì)學(xué)生考勤系統(tǒng)

信息與電子工程學(xué)院

課程設(shè)計(jì)報(bào)告

課程名稱:

姓名: 學(xué)號(hào): 班級(jí): 指導(dǎo)老師: 完成時(shí)間:

2016年6月 Java程序設(shè)計(jì)課程設(shè)計(jì)

學(xué)生考勤系統(tǒng)

問題描述:

以班為單位,可以以日期為標(biāo)識(shí)記錄每個(gè)學(xué)生的考勤情況(正常、曠課、請(qǐng)假、遲到、早退)、可以查看某個(gè)學(xué)生的考勤情況、可以查看全班的考勤情況.1.需求分析(標(biāo)題,黑體,小四,段前段后0.5行)

(1)用戶需求描述:

學(xué)生用戶:學(xué)生對(duì)本系統(tǒng)的主要需求是在線請(qǐng)假以及查看學(xué)期內(nèi)的上課出勤信息。在線請(qǐng)假中,學(xué)生可以隨時(shí)查看請(qǐng)假的進(jìn)展情況。另外學(xué)生還可以修改本人的密碼。

教師用戶:任課老師對(duì)本系統(tǒng)的主要需求是查看班級(jí)信息,查看學(xué)生信息。并且在上課前進(jìn)行點(diǎn)名,管理所教班級(jí)學(xué)生的上課出勤信息,查看學(xué)生上課出勤情況,對(duì)學(xué)生請(qǐng)假審請(qǐng)進(jìn)行批準(zhǔn)等。另外,教師還可以修改自己的密碼。(2)系統(tǒng)功能劃分: 根據(jù)用戶需求的描述,該考勤管理系統(tǒng)應(yīng)該具備:在線請(qǐng)假模塊,考勤管理模塊這兩大模塊。

在線請(qǐng)假模塊:

該模塊主要操作用戶是由學(xué)生,由學(xué)生登錄并進(jìn)行請(qǐng)假操作。可以選擇請(qǐng)假開始時(shí)間,請(qǐng)假結(jié)束時(shí)間,請(qǐng)假的原因等,最后提交由教師和輔導(dǎo)員進(jìn)行審核審批,審核通過后學(xué)生可以在請(qǐng)假記錄里面實(shí)時(shí)查看請(qǐng)假通過情況。若教師或輔導(dǎo)員不允許該請(qǐng)假,學(xué)生可以在請(qǐng)假失敗記錄里面查看具體原因。

考勤管理模塊:

該模塊主要由教師登錄并進(jìn)行操作,自己操作界面中修改學(xué)生考勤。老師在上課時(shí)通過該模塊可以對(duì)本課程考勤情況進(jìn)行網(wǎng)上考勤,考勤結(jié)果會(huì)保存在后臺(tái),也可以通過選擇導(dǎo)出為E表格,最后方便統(tǒng)計(jì)整個(gè)學(xué)期本課程所有學(xué)生的考勤情況。

2.總體設(shè)計(jì)

功能結(jié)構(gòu)圖;

ER圖:

數(shù)據(jù)庫(kù)設(shè)計(jì): 1 數(shù)據(jù)庫(kù)需求分析

學(xué)生考勤管理系統(tǒng)要實(shí)現(xiàn)在線請(qǐng)假、隨堂考勤兩大子系統(tǒng),需要了解學(xué)生用戶、教師用戶兩類用戶的功能模塊。然后,據(jù)此分析出數(shù)據(jù)需求。學(xué)生表:學(xué)生流水號(hào)、學(xué)生學(xué)號(hào)、學(xué)生名字、性別、宿舍號(hào)、聯(lián)系方式、密碼。請(qǐng)假表:請(qǐng)假開始時(shí)間、請(qǐng)假結(jié)束時(shí)間、請(qǐng)假原因、請(qǐng)假天數(shù)、審批時(shí)間。考勤表:考勤流水號(hào)、考勤的學(xué)生ID、考勤的課程ID、考勤時(shí)間、考勤課次、考勤結(jié)果。

3.主要功能的實(shí)現(xiàn)

(1)設(shè)計(jì)的思路: 根據(jù)用戶需求的描述,該考勤管理系統(tǒng)應(yīng)該具備:在線請(qǐng)假模塊,考勤管理模塊這三大模塊。

在線請(qǐng)假模塊:

該模塊主要操作用戶是由學(xué)生,由學(xué)生登錄并進(jìn)行請(qǐng)假操作。可以選擇請(qǐng)假開始時(shí)間,請(qǐng)假結(jié)束時(shí)間,請(qǐng)假的原因等,最后提交由教師和輔導(dǎo)員進(jìn)行審核審批,審核通過后學(xué)生可以在請(qǐng)假記錄里面實(shí)時(shí)查看請(qǐng)假通過情況。若教師或輔導(dǎo)員不允許該請(qǐng)假,學(xué)生可以在請(qǐng)假失敗記錄里面查看具體原因。

考勤管理模塊:

該模塊主要由教師登錄并進(jìn)行操作,自己操作界面中修改學(xué)生考勤。老師在上課時(shí)通過該模塊可以對(duì)本課程考勤情況進(jìn)行網(wǎng)上考勤,考勤結(jié)果會(huì)保存在后臺(tái),也可以通過選擇導(dǎo)出為E表格,最后方便統(tǒng)計(jì)整個(gè)學(xué)期本課程所有學(xué)生的考勤情況。用戶信息修改模塊: 該模塊主要操作用戶是由學(xué)生和老師,由用戶登錄并進(jìn)行操作。選擇修改用戶密碼,驗(yàn)證舊的用戶密碼,輸入新的用戶密碼,并且重復(fù)確認(rèn)輸入,點(diǎn)擊確定之后,系統(tǒng)修改用戶信息并保存。

(2)算法流程圖:

(3)UML時(shí)序圖:

學(xué)生輸入用戶名和密碼,系統(tǒng)驗(yàn)證用戶名和密碼是否正確,如果正確,顯示系統(tǒng)主頁(yè)面。(4)活動(dòng)圖:

學(xué)生登陸系統(tǒng)點(diǎn)擊請(qǐng)假申請(qǐng),然后填寫假條信息,填寫完成后點(diǎn)擊提交,老師審批假條并返回信息給申請(qǐng)者。(2)程序執(zhí)行結(jié)果

4.小結(jié)

課程設(shè)計(jì)小結(jié):該系統(tǒng)還有較多不完善之處,個(gè)人能力也有待進(jìn)一步的提升。通過這次課程設(shè)計(jì),重新掌握了一些以前掌握的不夠牢固的知識(shí)和一些不懂的方法實(shí)現(xiàn)的思路及想法,讓我們得到進(jìn)一步的提高。

第二篇:《JAVA程序設(shè)計(jì)》課程設(shè)計(jì)

JAVA程序設(shè)計(jì)》課程設(shè)計(jì)

------Chatter即時(shí)聊天工具

班 級(jí): 姓 名: 學(xué) 號(hào): 指導(dǎo)老師: 日 期:

目錄

1.引言.....................................................................................3 2.功能簡(jiǎn)介..............................................................................3 3.開發(fā)環(huán)境..............................................................................3 4.課程設(shè)計(jì)目的.......................................................................3 5.使用手冊(cè)..............................................................................3 6.程序源代碼...........................................................................4 4.1 serverJFrame.java...............................................................4

4.2 clientJFrame.java...............................................................9 7.程序運(yùn)行效果圖...................................................................14

8.心得體會(huì).............................................................................16

1.引言

相信大家一想到基于TCP/IP協(xié)議的通信,都會(huì)想到利用Socket類對(duì)象建立一條可靠的連接,這樣就客戶機(jī)/服務(wù)器就在這條連接上可靠地傳輸數(shù)據(jù)。但是我是利用基于UDP協(xié)議的通信原理,制作了一個(gè)類似QQ游戲聊天室的聊天軟件。雖然軟件功能還不是很完善,不過,只要花點(diǎn)時(shí)間,參考一些書籍或類似的聊天軟件的源代碼,相信可以把這個(gè)聊天軟件做得更好,功能更加齊全,給用戶帶來更多娛樂體驗(yàn)。

2.功能簡(jiǎn)介

1)利用AWT/Swing設(shè)計(jì)了軟件界面,界面簡(jiǎn)潔美觀,聊天記錄界面形式是模仿QQ聊天記錄格式的,即不管是服務(wù)器還是客戶端發(fā)的信息,都會(huì)有時(shí)間顯示。2)本軟件還具有保存聊天記錄的功能。

3)軟件是不允許服務(wù)器或客戶端發(fā)送空信息的。發(fā)送信息為空時(shí),消息對(duì)話框給予信息提示。

4)軟件顯示聊天信息的文本區(qū)域添加了垂直滾動(dòng)條,防止發(fā)送和接收的信息不能全部顯示不出來。

5)實(shí)現(xiàn)了對(duì)不文明語(yǔ)言的過濾以及線程處理機(jī)制。

6)軟件對(duì)IP格式進(jìn)行了必要的設(shè)置,防止IP地址輸入不正確導(dǎo)致程序出現(xiàn)假死 7)用戶和服務(wù)器的昵稱不能為空,當(dāng)為空時(shí)不給予發(fā)送信息。8)當(dāng)然也可以實(shí)現(xiàn)本地聊天。

3.開發(fā)環(huán)境

1)PC機(jī)

2)Windows 7系統(tǒng) 3)Internet連接 4)Eclipse軟件

4.課程設(shè)計(jì)目的

1)理解多線程機(jī)制

2)學(xué)會(huì)利用AWT/Swing設(shè)計(jì)軟件界面 3)掌握輸入輸出流的使用方法。4)懂得事件處理的方法及原理。

5)明白Java網(wǎng)絡(luò)的基本知識(shí),如UDP協(xié)議的通信原理。

5.使用手冊(cè)

首先啟動(dòng)服務(wù)器,填寫用戶的IP地址,注意正確填寫IP地址的格式,不要寫錯(cuò),輸入完IP地址后,點(diǎn)擊“確定”按鈕進(jìn)行驗(yàn)證;然后填寫你喜歡的昵稱,注意昵稱不能為空,否則,將無(wú)法發(fā)送信息;發(fā)送的信息要文明化,如果你使用了不文明的語(yǔ)言,將會(huì)被屏蔽,不給予發(fā)送。如果你覺得想保存聊天記錄,你可以點(diǎn)擊“保存”按鈕,將聊天記錄保存為文本文件;如果你玩累了,你可以點(diǎn)擊右上角的“關(guān)閉”按鈕,退出聊天室。6.程序源代碼

6.1 serverJFrame.java package server;import java.awt.event.*;

import java.awt.*;

import java.io.OutputStreamWriter;import javax.swing.*;

import java.io.File;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.IOException;import java.net.*;import java.util.Date;import java.io.*;

public class serverJFrame extends JFrame implements ActionListener,Runnable{

JButton sendButton=null;JButton saveButton=null;JButton IPButton=null;JTextField nameSpace=null;JTextField IPField=null;JTextArea messageArea=null;JTextField sendField=null;java.util.Date date=null;String IP;public serverJFrame(){

date=new java.util.Date();

JPanel northPanel=new JPanel();

JPanel IPPanel=new JPanel();

JPanel southPanel=new JPanel();

JPanel namePanel=new JPanel(new FlowLayout());

JLabel sendLabel=new JLabel(“發(fā)送內(nèi)容:”);

JLabel nameChangeLabel=new JLabel(“我的昵稱:”);

JLabel IPLabel=new JLabel(“好友地址:”);

nameSpace=new JTextField(“",20);

IPField=new JTextField(”“,20);

messageArea=new JTextArea(”“,20,10);

messageArea.setLineWrap(true);

messageArea.setEditable(false);

sendField=new JTextField(20);

JScrollPane message=new JScrollPane(messageArea);//為文本區(qū)添加滾動(dòng)條

sendButton=new JButton(”發(fā)送“);

saveButton=new JButton(”保存“);

IPButton=new JButton(”確定“);

Box centerBox=Box.createVerticalBox();

namePanel.add(nameChangeLabel);

namePanel.add(nameSpace);

namePanel.add(saveButton);

IPPanel.add(IPLabel);

IPPanel.add(IPField);

IPPanel.add(IPButton);

centerBox.add(namePanel);

centerBox.add(IPPanel);

centerBox.add(message);

JFrame frame=new JFrame(”服務(wù)器端“);

northPanel.add(sendLabel);

northPanel.add(sendField);

northPanel.add(sendButton);

frame.add(northPanel,”North“);

frame.add(southPanel,”South“);

frame.add(centerBox,”Center“);

frame.setBounds(150,300,380,400);

frame.setResizable(false);

sendButton.addActionListener(this);

IPButton.addActionListener(this);

saveButton.addActionListener(this);

addWindowListener(new WindowAdapter(){

public void windowClosing(WindowEvent e){

System.exit(0);

}

});

Thread thread=new Thread(this);//創(chuàng)建線程對(duì)象

thread.start();//線程負(fù)責(zé)接收數(shù)據(jù)包

frame.setVisible(true);}

public static class Protocol {

//定義三個(gè)靜態(tài)常量,分別為錯(cuò)誤信息,正常信息,還有快樂用語(yǔ)

public static final int ERROR_MSG = 0;

public static final int NOMAL_MSG = 1;

public static final int HAPPY_MSG = 2;

public static int processString(String str){

//對(duì)以下不文明用語(yǔ)進(jìn)行過濾

if(str.indexOf(”TMD“)>= 0||str.indexOf(”mother fuck“)>= 0||str.indexOf(”去你的“)>= 0

||str.indexOf(”你媽的“)>= 0){

return ERROR_MSG;

}else if(str.indexOf(”FUCK“)>= 0||str.indexOf(”奶奶的“)>= 0||str.indexOf(”我得死你“)>= 0){

return ERROR_MSG;

}else if(str.indexOf(”他媽的“)>= 0||str.indexOf(”shit“)>= 0||str.indexOf(”got dam it“)>= 0

||str.indexOf(”我操“)>= 0||str.indexOf(”fuck you“)>= 0){

return ERROR_MSG;

}else if(str.indexOf(”哈哈“)>= 0||str.indexOf(”呵呵“)>= 0||str.indexOf(”嘿嘿“)>= 0){

return HAPPY_MSG;//對(duì)快樂用語(yǔ)進(jìn)行返回

}

else{

return NOMAL_MSG;

}

}

}

public class Time {

Date date;//創(chuàng)建日期對(duì)象

String strTime;//創(chuàng)建字符串對(duì)象

Time(){date=new java.util.Date();

strTime=date.toString().substring(11,19);//獲取時(shí)間為時(shí):分:秒

} } //單擊”發(fā)送“按鈕從端口321發(fā)送數(shù)據(jù)包

public void actionPerformed(ActionEvent event){

if(event.getSource()==IPButton){

if(IPField.getText().trim().matches(”[0-9]*[.][0-9]*[.][0-9]*[.][0-9]*“)){

IP=IPField.getText();

IPField.setEditable(false);

}

else{

JOptionPane.showMessageDialog(this, ”IP地址格式錯(cuò)誤!“,”警告“, JOptionPane.WARNING_MESSAGE);}

}

else if(event.getSource()==sendButton){

Time time=new Time();

if(IPField.getText().length()==0){

JOptionPane.showMessageDialog(this, ”IP地址不能為空!“,”警告“, JOptionPane.WARNING_MESSAGE);IPField.setText(”“);

}

else if(nameSpace.getText().length()==0){

JOptionPane.showMessageDialog(this, ”昵稱不能為空!“,”警告“, JOptionPane.WARNING_MESSAGE);

}

else{

if(sendField.getText().length()==0){

JOptionPane.showMessageDialog(this, ”發(fā)送的信息不能為空!“,”警告“, JOptionPane.WARNING_MESSAGE);

}

else{

try{

String Sendmessage=nameSpace.getText()+” “+time.strTime+”rn

“+sendField.getText();//設(shè)置要發(fā)送的信息

if(Protocol.processString(Sendmessage)==Protocol.ERROR_MSG){

messageArea.append(”已被屏蔽“+”''“+sendField.getText()+”''。“+”注意文明用語(yǔ)!“+”rn“);

sendField.setText(”“);

}

else{

byte buffer[]=Sendmessage.getBytes();//將要發(fā)送的信息轉(zhuǎn)化字節(jié)

InetAddress address=InetAddress.getByName(IP);//指定本地IP127.0.0.1

//創(chuàng)建發(fā)送數(shù)據(jù)據(jù)

DatagramPacket data=new DatagramPacket(buffer,buffer.length,address,321);

DatagramSocket dataSocket=new DatagramSocket();//數(shù)據(jù)報(bào)套接字,指定端口號(hào)為321

String s=nameSpace.getText();//獲取昵稱

String sendText=sendField.getText();//獲得發(fā)送的信息

messageArea.append(s+” “+time.strTime+”rn

“+sendText+”rn“);//向文本區(qū)添加發(fā)送的信息

dataSocket.send(data);//正式發(fā)送數(shù)據(jù)

sendField.setText(”“);//數(shù)據(jù)發(fā)送完后,“發(fā)送的內(nèi)容”處清空

nameSpace.setEditable(false);// 發(fā)送完信息“昵稱”處不可以編輯

}

}

catch(Exception e){e.printStackTrace();}//異常處理

}

}

}

else if(event.getSource()==saveButton){

String path;

FileOutputStream fos;

OutputStreamWriter osw=null;

FileDialog filedialog_save=new FileDialog(this,”保存“,FileDialog.SAVE);

filedialog_save.setVisible(true);

path=filedialog_save.getDirectory()+filedialog_save.getFile()+”.txt“;

File txt=new File(path);

if(!txt.exists()){

try {

txt.createNewFile();

} catch(IOException e1){

e1.printStackTrace();

}

}

try {

fos = new FileOutputStream(txt);

osw=new OutputStreamWriter(fos,”UTF8“);

osw.write(messageArea.getText());

osw.flush();

fos.close();

} catch(FileNotFoundException e1){

e1.printStackTrace();

} catch(IOException ee){

}

}

else if(event.getSource()==saveButton){}

}

//從端口567接收數(shù)據(jù)包

public void run(){

DatagramPacket receive=null;

DatagramSocket receive_data=null;

byte data[]=new byte[5000];//字節(jié)數(shù)組大小為5000個(gè)

try{

receive=new DatagramPacket(data,data.length);//創(chuàng)建一個(gè)長(zhǎng)度為5000的數(shù)據(jù)報(bào)對(duì)象

receive_data=new DatagramSocket(567);//為數(shù)據(jù)報(bào)套接字指定端口號(hào)為567的端口

}catch(Exception e){e.printStackTrace();}

while(true){

if(receive_data==null)break;

else

try{

receive_data.receive(receive);//接收數(shù)據(jù)到數(shù)據(jù)報(bào)

String message=new String(receive.getData(),0,receive.getLength());

//將數(shù)據(jù)報(bào)信息轉(zhuǎn)換為字符串

// System.out.println(receive.getAddress());

messageArea.append(message+”rn“);//文本區(qū)添加接收到的信 息

}catch(Exception e){e.printStackTrace();}//異常處理

}

}

public static void main(String[] args)

{

serverJFrame server= new serverJFrame();//創(chuàng)建一個(gè)窗口對(duì)象,該窗口為JFrame類的子類對(duì)象

server.addWindowListener(new WindowAdapter(){//窗口添加適配器

public void windowClosing(WindowEvent e){

System.exit(0);

}

});

server.validate();

}

}

6.2 clientJFrame.java package client;import java.awt.event.*;

import java.awt.*;

import javax.swing.*;

import java.io.File;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.IOException;import java.net.*;import java.util.Date;import java.io.OutputStreamWriter;

public class clientJFrame extends JFrame implements ActionListener,Runnable{ JButton sendButton=null;JButton saveButton=null;JButton IPButton=null;JTextField IPField=null;JTextField nameSpace=null;JTextArea messageArea=null;JTextField sendField=null;java.util.Date date=null;String IP;public clientJFrame(){

date=new java.util.Date();

JPanel northPanel=new JPanel();

JPanel IPPanel=new JPanel();

JPanel southPanel=new JPanel();

JPanel namePanel=new JPanel(new FlowLayout());

JLabel sendLabel=new JLabel(”發(fā)送內(nèi)容:“);

JLabel nameChangeLabel=new JLabel(”我的昵稱:“);

JLabel IPLabel=new JLabel(”好友地址:“);

nameSpace=new JTextField(”“,20);

IPField=new JTextField(”“,20);

messageArea=new JTextArea(”“,20,10);

messageArea.setLineWrap(true);

messageArea.setEditable(false);

sendField=new JTextField(20);

JScrollPane message=new JScrollPane(messageArea);

sendButton=new JButton(”發(fā)送“);

saveButton=new JButton(”保存“);

IPButton=new JButton(”確定“);

Box centerBox=Box.createVerticalBox();

namePanel.add(nameChangeLabel);

namePanel.add(nameSpace);

namePanel.add(saveButton);

IPPanel.add(IPLabel);

IPPanel.add(IPField);

IPPanel.add(IPButton);

centerBox.add(namePanel);

centerBox.add(IPPanel);

centerBox.add(message);

JFrame frame=new JFrame(”客戶端“);

northPanel.add(sendLabel);

northPanel.add(sendField);

northPanel.add(sendButton);

frame.add(northPanel,”North“);

frame.add(southPanel,”South“);

frame.add(centerBox,”Center“);

frame.setBounds(600,300,380,400);

frame.setResizable(false);

sendButton.addActionListener(this);

IPButton.addActionListener(this);

saveButton.addActionListener(this);

addWindowListener(new WindowAdapter(){

public void windowClosing(WindowEvent e){

System.exit(0);

}

});

Thread thread=new Thread(this);

thread.start();//線程負(fù)責(zé)接收數(shù)據(jù)包

frame.setVisible(true);}

public static class Protocol {

//定義三個(gè)靜態(tài)常量,分別為錯(cuò)誤信息,正常信息,還有快樂用語(yǔ)

public static final int ERROR_MSG = 0;

public static final int NOMAL_MSG = 1;

public static final int HAPPY_MSG = 2;

public static int processString(String str){

//對(duì)以下不文明用語(yǔ)進(jìn)行過濾

if(str.indexOf(”TMD“)>= 0||str.indexOf(”mother fuck“)>= 0||str.indexOf(”去你的“)>= 0

||str.indexOf(”你媽的“)>= 0){

return ERROR_MSG;

}else if(str.indexOf(”FUCK“)>= 0||str.indexOf(”奶奶的“)>= 0||str.indexOf(”我得死你“)>= 0){

return ERROR_MSG;

}else if(str.indexOf(”他媽的“)>= 0||str.indexOf(”shit“)>= 0||str.indexOf(”got dam it“)>= 0

||str.indexOf(”我操“)>= 0||str.indexOf(”fuck you“)>= 0){

return ERROR_MSG;

}else if(str.indexOf(”哈哈“)>= 0||str.indexOf(”呵呵“)>= 0||str.indexOf(”嘿嘿“)>= 0){

return HAPPY_MSG;//對(duì)快樂用語(yǔ)進(jìn)行返回

}

else{

return NOMAL_MSG;

}

}

}

public class Time {

Date date;//創(chuàng)建日期對(duì)象

String strTime;//創(chuàng)建字符串對(duì)象

Time(){date=new java.util.Date();

strTime=date.toString().substring(11,19);//獲取時(shí)間為時(shí):分:秒

} } //單擊”發(fā)送“按鈕從端口567發(fā)送數(shù)據(jù)包

public void actionPerformed(ActionEvent event){

if(event.getSource()==IPButton){

if(IPField.getText().trim().matches(”[0-9]*[.][0-9]*[.][0-9]*[.][0-9]*“)){

IP=IPField.getText();

IPField.setEditable(false);

}

else{

JOptionPane.showMessageDialog(this, ”IP地址格式錯(cuò)誤!“,”警告“, JOptionPane.WARNING_MESSAGE);IPField.setText(”“);}

}

else if(event.getSource()==sendButton){

Time strTime=new Time();

if(IPField.getText().length()==0){

JOptionPane.showMessageDialog(this, ”IP地址不能為空!“,”警告“, JOptionPane.WARNING_MESSAGE);

}

else if(nameSpace.getText().length()==0){

JOptionPane.showMessageDialog(this, ”昵稱不能為空!“,”警告“, JOptionPane.WARNING_MESSAGE);

}

else{

if(sendField.getText().length()==0){

JOptionPane.showMessageDialog(this, ”發(fā)送的信息不能為空!“,”警告“, JOptionPane.WARNING_MESSAGE);

}

else{

try{

String Sendmessage=nameSpace.getText()+” “+strTime.strTime+”rn

“+sendField.getText();//設(shè)置要發(fā)送的信息

if(Protocol.processString(Sendmessage)==Protocol.ERROR_MSG){

messageArea.append(”已被屏蔽“+”''“+sendField.getText()+”''。“+”注意文明用語(yǔ)!“+”rn“);

sendField.setText(”“);

}

else{

byte buffer[]=Sendmessage.getBytes();

InetAddress address=InetAddress.getByName(IP);//

DatagramPacket data=new DatagramPacket(buffer,buffer.length,address,567);

DatagramSocket dataSocket=new DatagramSocket();

String s=nameSpace.getText();

String sendText=sendField.getText();

messageArea.append(s+” “+strTime.strTime+”rn

“+sendText+”rn“);

dataSocket.send(data);

sendField.setText(”“);

nameSpace.setEditable(false);

}

}

catch(Exception e){e.printStackTrace();} }

}

}

else if(event.getSource()==saveButton){

String path;

FileOutputStream fos;

OutputStreamWriter osw=null;

FileDialog filedialog_save=new FileDialog(this,”保存“,FileDialog.SAVE);

filedialog_save.setVisible(true);

path=filedialog_save.getDirectory()+filedialog_save.getFile()+”.txt“;

File txt=new File(path);

if(!txt.exists()){

try {

txt.createNewFile();

} catch(IOException e1){

e1.printStackTrace();

}

}

try {

fos = new FileOutputStream(txt);

osw=new OutputStreamWriter(fos,”UTF8“);

osw.write(messageArea.getText());

osw.flush();

fos.close();

} catch(FileNotFoundException e1){

e1.printStackTrace();

} catch(IOException ee){

}

}

}

//從端口321接收數(shù)據(jù)包

public void run(){

DatagramPacket receive=null;

DatagramSocket receive_data=null;

byte data[]=new byte[5000];

try{

receive=new DatagramPacket(data,data.length);

receive_data=new DatagramSocket(321);

}catch(Exception e){}

while(true){

if(receive_data==null)break;

else

try{

receive_data.receive(receive);

String

message=new String(receive.getData(),0,receive.getLength());

messageArea.append(message+”rn");

}catch(Exception e){e.printStackTrace();}

}

}

public static void main(String[] args)

{

clientJFrame client= new clientJFrame();

client.addWindowListener(new WindowAdapter(){

public void windowClosing(WindowEvent e){

System.exit(0);

}

});

client.validate();

}

}

7.程序運(yùn)行效果圖

注:由于只有一臺(tái)PC,以下的程序效果圖是本地IP運(yùn)行的結(jié)果截圖 1)IP地址輸入的格式不正確。

2)昵稱不能為空。

3)發(fā)送的信息不能為空。

4)發(fā)送的信息包含不文明語(yǔ)言給予屏蔽。

5)保存聊天記錄后的效果圖。

8.心得體會(huì)

通過這次課程設(shè)計(jì),真的收獲很大。如果只是考試的話,我覺得試卷的內(nèi)容會(huì)是很基本的知識(shí)點(diǎn),而這個(gè)課程設(shè)計(jì)可以把很多章的知識(shí)結(jié)合起來,知識(shí)點(diǎn)更具體,更有深度,可以進(jìn)一步提高自己的編程能力。雖然這是個(gè)簡(jiǎn)易的聊天室,但是還可以進(jìn)一步完善,提高界面的可視化效果,增加用戶聊天的樂趣。

第三篇:課程設(shè)計(jì)《JAVA程序設(shè)計(jì)》任務(wù)書.

《 JA V A 程序設(shè)計(jì)》課程設(shè)計(jì)任務(wù)書 一.課程設(shè)計(jì)基本信息

課程名稱:《JAVA 程序設(shè)計(jì)》課程設(shè)計(jì) 學(xué)時(shí):1周 學(xué)分:1學(xué)分

二.課程設(shè)計(jì)目的與要求

1.教學(xué)目的:本課程是學(xué)習(xí)《 Java 程序設(shè)計(jì)》后的綜合實(shí)踐課,使學(xué)生能夠比較深入的理解 Java 語(yǔ)言的特征及體系;熟練的掌握并會(huì)運(yùn)用 Java 語(yǔ)言與面向?qū)ο蟪绦蛟O(shè)計(jì)的思想和方法設(shè)計(jì)應(yīng)用程序解 決應(yīng)用問題,積累程序設(shè)計(jì)的實(shí)踐經(jīng)驗(yàn),為培養(yǎng)軟件技術(shù)高技能人才奠定基礎(chǔ)。

本課程是培養(yǎng)計(jì)劃中綜合性較強(qiáng)的實(shí)踐教學(xué)環(huán)節(jié)之一, 幫助學(xué)生掌握教學(xué)內(nèi)容、培養(yǎng)學(xué)生運(yùn)用知識(shí) 解決應(yīng)用問題的實(shí)際動(dòng)手能力、提高學(xué)生綜合素質(zhì)有很重要的意義。

2.教學(xué)要求:本課程設(shè)計(jì)以設(shè)計(jì)一個(gè)或多個(gè)實(shí)際應(yīng)用系統(tǒng)為目的,通過課程設(shè)計(jì)讓學(xué)生較全面的 掌握 Java 語(yǔ)法基礎(chǔ)知識(shí)、面向?qū)ο蟪绦蛟O(shè)計(jì)方法, 尤其是基于 Java 的應(yīng)用程序設(shè)計(jì)的方法與技術(shù), 能 夠運(yùn)用 J2SE平臺(tái),結(jié)合相應(yīng)的數(shù)據(jù)庫(kù)系統(tǒng)開發(fā)應(yīng)用程序,理論聯(lián)系實(shí)際,達(dá)到培養(yǎng)實(shí)踐操作技能的目 的。

學(xué)生要了解 Java 程序開發(fā)的一般過程,特別掌握系統(tǒng)分析與設(shè)計(jì)的基本方法,寫出系統(tǒng)分析與設(shè) 計(jì)報(bào)告,并能設(shè)計(jì)真實(shí)可用的應(yīng)用系統(tǒng)。

三.課程設(shè)計(jì)內(nèi)容與安排

根據(jù)老師提供的設(shè)計(jì)題目, 寫出系統(tǒng)分析與設(shè)計(jì)報(bào)告, 并建立原型系統(tǒng)。題目可以由教師與學(xué)生根 據(jù)實(shí)際情況商定,可參考的題目:圖書借閱管理系統(tǒng)、產(chǎn)品管理

系統(tǒng)、學(xué)生成績(jī)管理、學(xué)生信息管理、人事管理、人力資源管理系統(tǒng)、物流信息管理系統(tǒng)等。

1.主要設(shè)計(jì)內(nèi)容如下:(1系統(tǒng)設(shè)計(jì):包括系統(tǒng)需求分析、總體設(shè)計(jì)和功能設(shè)計(jì),必要時(shí)使用圖表說明。(2數(shù)據(jù)庫(kù)設(shè)計(jì)與實(shí)現(xiàn):包括數(shù)據(jù)庫(kù)的需求分析、數(shù)據(jù)庫(kù)的概念結(jié)構(gòu)設(shè)計(jì)和數(shù)據(jù)庫(kù)的邏輯設(shè)計(jì)。

(3系統(tǒng)各模塊設(shè)計(jì):包括用戶界面及相應(yīng)功能算法等程序設(shè)計(jì)。2.教學(xué)安排

總課時(shí) 30課時(shí),其中需求分析與系統(tǒng)設(shè)計(jì)、數(shù)據(jù)庫(kù)設(shè)計(jì)與實(shí)現(xiàn)、系統(tǒng)各模塊實(shí)現(xiàn)所以及系統(tǒng)集成 調(diào)試運(yùn)行用時(shí)間建議各占 15%,15%,40%,20%的課時(shí), 學(xué)生可根據(jù)具體情況調(diào)整, 利用 10%的時(shí)間完成課 程設(shè)計(jì)報(bào)告。

四.課程設(shè)計(jì)教學(xué)建議及要求

1.要求學(xué)生有一定的程序設(shè)計(jì)和數(shù)據(jù)庫(kù)基礎(chǔ)知識(shí),由老師指定或?qū)W生自行組織形成項(xiàng)目小組,必 要時(shí)由多人開發(fā)一個(gè)項(xiàng)目, 其中需要指定負(fù)責(zé)項(xiàng)目的小組長(zhǎng)控制項(xiàng)目進(jìn)度。每個(gè)小組的項(xiàng)目開發(fā)過程應(yīng) 該遵從項(xiàng)目管理規(guī)范。

2.嚴(yán)格要求每個(gè)學(xué)生按照規(guī)定時(shí)間進(jìn)行設(shè)計(jì),禁止無(wú)故遲到和曠課。3.要求學(xué)生有自我學(xué)習(xí)的能力,遇到問題要學(xué)會(huì)自我解決。

4.要求設(shè)計(jì)的界面美觀、合理、便于操作等,功能與實(shí)際應(yīng)用系統(tǒng)緊密聯(lián)系,系統(tǒng)結(jié)構(gòu)合理構(gòu)思 巧妙、模塊化程度高等。

五.課程設(shè)計(jì)成績(jī)?cè)u(píng)定

課程設(shè)計(jì)成績(jī)由學(xué)生的出勤情況和程序設(shè)計(jì)情況各分別占 10%和 90%組成。程序的考核從界面、功 能實(shí)現(xiàn)、創(chuàng)新性、問題回答和課程設(shè)計(jì)報(bào)告等幾方面進(jìn)行。

考核內(nèi)容和比重表(參考

考核內(nèi)容 出勤 界面 功能實(shí)現(xiàn) 創(chuàng)新 問題回答 設(shè)計(jì)報(bào)告 比重 10%15%30%15%10%20% 六.課程設(shè)計(jì)報(bào)告撰寫與提交

1.課程設(shè)計(jì)報(bào)告格式見本文后面所附 “課程設(shè)計(jì)報(bào)告模板” , 課程設(shè)計(jì)報(bào)告最終以電子稿形式提交, 如需打印另行通知。在課程設(shè)計(jì)正文中使用圖表時(shí), 所有的圖必須有圖號(hào)和圖題, 所有的表必須有表的 名稱和編號(hào)。

2.對(duì)課程設(shè)計(jì)報(bào)告正文內(nèi)容的提示說明如下:(1摘要(100-150個(gè)字: 主要包括設(shè)計(jì)內(nèi)容、方法和結(jié)果,最后列出報(bào)告中用到關(guān)鍵字。(2課程設(shè)計(jì)介紹(要求 400-600個(gè)字: 對(duì)課程設(shè)計(jì)內(nèi)容做綜述,介紹課程設(shè)計(jì)的目的和要求等內(nèi)容。同時(shí)對(duì)課程設(shè)計(jì)小組成員構(gòu)成 進(jìn)行介紹,并說明自己在整個(gè)課程設(shè)計(jì)中將承擔(dān)的任務(wù)。

(3系統(tǒng)設(shè)計(jì)(要求 600-800個(gè)字: 主要介紹完成系統(tǒng)需求分析、總體設(shè)計(jì)和功能設(shè)計(jì)。必要時(shí)利用圖表說明。(4數(shù)據(jù)庫(kù)設(shè)計(jì)與實(shí)現(xiàn): 主要介紹數(shù)據(jù)庫(kù)的需求分析、數(shù)據(jù)庫(kù)的概念結(jié)構(gòu)設(shè)計(jì)和數(shù)據(jù)庫(kù)的邏輯設(shè)計(jì)。數(shù)據(jù)庫(kù)設(shè)計(jì)應(yīng)利 用圖表說明。

(5系統(tǒng)各功能模塊設(shè)計(jì)(字?jǐn)?shù)根據(jù)實(shí)際情況而定 : 主要介紹系統(tǒng)各功能模塊的界面設(shè)計(jì)及相應(yīng)的功能程序設(shè)計(jì)。對(duì)于界面設(shè)計(jì)應(yīng)的描述界面中所

使用的相應(yīng)的組件列表,包括組件類別、組件 ID 值、組件作用等。同時(shí)應(yīng)附相應(yīng)界面設(shè)計(jì)狀 態(tài)的界面截圖和相應(yīng)的運(yùn)行界面截圖。如果涉及多個(gè)功能模塊,則應(yīng)分別描

述。

(6課程設(shè)計(jì)總結(jié)和體會(huì)

主要對(duì)課程設(shè)計(jì)所做的工作進(jìn)行總結(jié), 同時(shí)描述課程設(shè)計(jì)后的體會(huì), 包括專業(yè)技術(shù)方面的體會(huì) 和職業(yè)能力和職業(yè)意識(shí)方面的體會(huì)。另外對(duì)課程設(shè)計(jì)內(nèi)容中存在的不足和改進(jìn)意見進(jìn)行闡述。(7致謝

在課程設(shè)計(jì)過程中,如果得到他人的幫助,則不要忘記致謝。(8參考文獻(xiàn)

要列出在課程設(shè)計(jì)過程中用到的主要參考文獻(xiàn)和站點(diǎn)。雖然看過, 但沒有用到的文獻(xiàn)或站點(diǎn)則 不必列出。參考文獻(xiàn)要與報(bào)告正文關(guān)聯(lián),要不少于 4項(xiàng)。

(9附錄:帶注釋的程序清單

源程序清單只寫關(guān)鍵程序要有注釋。注釋是功能性的注釋,而不須要對(duì)語(yǔ)句或命令本身進(jìn)行 注釋。

Java 課程設(shè)計(jì)參考題目

1、編寫一個(gè)記事本程序 要求:

用圖形用戶界面實(shí)現(xiàn)。

能實(shí)現(xiàn)編輯、保存、另存為、查找替換等功能。提示:使用文件輸入輸出流。

2、模擬龜兔賽跑 要求: 用圖形用戶界面實(shí)現(xiàn)。

能設(shè)置比賽時(shí)間,馬匹的數(shù)量等等。在任意時(shí)間段內(nèi)馬匹的速度是隨機(jī)的。開始比賽之后以動(dòng)畫顯示賽馬過程。提示:使用多線程

3、學(xué)生信息管理系統(tǒng) 要求: 使用圖形用戶界面

用數(shù)據(jù)庫(kù)建立 1或 2個(gè)學(xué)生信息表。(可以使用 txt 文件代替數(shù)據(jù)庫(kù) 能連接數(shù)據(jù)庫(kù)并實(shí)現(xiàn)查詢、增、刪、改等功能。

4、聊天小程序 要求: 使用圖形用戶界面。

能實(shí)現(xiàn)一個(gè)聊天室中多人聊天。

可以兩人私聊。提示:使用 socket 通信

5、ATM 柜員機(jī)模擬程序

要求:使用圖形用戶界面。當(dāng)輸入給定的卡號(hào)和密碼(初始卡號(hào)和密碼為 123456 時(shí), 系統(tǒng)能登錄 ATM 柜員機(jī)系統(tǒng),用戶可以按照以下規(guī)則進(jìn)行:

1、查詢余額:初始余額為 10000元

2、ATM 取款:每次取款金額為 100的倍數(shù),總額不超過 5000元,支取金額不允許透支。

3、ATM 存款:不能出現(xiàn)負(fù)存款。

4、修改密碼:新密碼長(zhǎng)度不小于 6位,不允許出現(xiàn) 6位完全相同的情況,只有舊密碼正確,新密碼符 合要求,且兩次輸入相同的情況下才可以成功修改密碼。

6、實(shí)現(xiàn)數(shù)據(jù)結(jié)構(gòu)中二叉樹的遍歷演示過程 要求:使用圖形用戶界面

實(shí)現(xiàn)二叉樹的前序遍歷、中序遍歷、后續(xù)遍歷、按層遍歷的算法的演示過程。動(dòng)畫演示盡量與程序執(zhí)行 同步,人機(jī)交互、適于教學(xué)。

7、超市收銀系統(tǒng) 要求:使用圖形用戶界面。

由收銀員輸入顧客的會(huì)員卡卡號(hào)(若有卡、所購(gòu)商品的貨號(hào)等。從數(shù)據(jù)庫(kù)中取出有關(guān)價(jià)格信息,再把

這些信息返回給收銀臺(tái)。同時(shí)把該收銀臺(tái)的銷售總量和有關(guān)種類商品的剩余量以及該持卡顧客的消費(fèi)情 況交數(shù)據(jù)庫(kù)存儲(chǔ)以供查詢。

另外,對(duì)沒有卡的消費(fèi)情況不記錄該顧客的消費(fèi)情況等個(gè)人信息。如果一個(gè)未持卡顧客一次購(gòu)物滿 200元,可為其發(fā)放一張會(huì)員卡,以后在該商場(chǎng)購(gòu)物可向 9折優(yōu)惠。

8、萬(wàn)年歷

要求:使用圖形用戶界面。

實(shí)現(xiàn)日期與星期的查詢,其他功能自定義。

9、五子棋游戲 要求:使用圖形用戶界面 實(shí)現(xiàn)兩人游戲,能夠判斷輸贏

有 “ 開始 ” 按鈕,當(dāng)選擇完棋盤大小后,按此按鈕進(jìn)入對(duì)戰(zhàn)狀態(tài)。當(dāng)有勝利者(垂直、水平、對(duì)角線連續(xù) 5子 ,顯示對(duì)話框,提示誰(shuí)(黑還是白勝利了。若當(dāng)棋盤滿了還無(wú)勝利者,顯示平局對(duì)話框。界面 上還要有 “ 復(fù)盤 ” 按鈕,可對(duì)完成的棋局進(jìn)行復(fù)盤,例如每 3秒走一步。

10、日歷記事本

要求:帶有日程提醒功能的日歷。

1、顯示信息:用戶可以向前翻頁(yè)查詢前一個(gè)月的日期,也可以向后翻頁(yè)查詢下一個(gè)月的日期。

2、定時(shí)提醒:用戶可以針對(duì)某一天來添加,刪除和編輯這一天的日程提醒信息,當(dāng)系統(tǒng)時(shí)間和提醒時(shí) 間相吻合時(shí),給出具有提示信息的對(duì)話框。

3、查詢信息:用戶可以查詢到某個(gè)月的所有的提示信息。

11、電子英漢詞典

要求: 能夠編輯詞典庫(kù)中的信息

能夠?qū)崿F(xiàn)英譯漢,漢譯英。(要考慮一詞多義

12、計(jì)算器小程序 要求:使用圖形用戶界面

能在鍵盤或鼠標(biāo)上讀入數(shù)據(jù),并完成加。減。乘。除計(jì)算。在屏幕上顯示一個(gè)主菜單。提示用戶輸入 相應(yīng)的數(shù)字鍵,分辨執(zhí)行加。減。乘。除計(jì)算功能和結(jié)束程序的功能。

13、圖的最小生成樹算法過程演示 要求:使用圖形用戶界面

使用菜單顯示普利姆和克魯斯卡爾最小生成樹的動(dòng)畫實(shí)現(xiàn)過程, 動(dòng)畫與算法的實(shí)現(xiàn)盡量同步實(shí)現(xiàn), 便于 人機(jī)交互和教學(xué)。

14、加密與解密 要求:采用圖形用戶界面

1、給定任意一個(gè)文本文件,進(jìn)行加密,生成另一個(gè)文件。

2、對(duì)加密后的文件還原。

15、小游戲 要求:。

程序隨機(jī)產(chǎn)生 20— 50根火柴,由人與計(jì)算機(jī)輪流拿,每次拿的數(shù)量不超過 3根,拿到最后一根為勝。(使用圖形界面

16、敏感詞匯分析 要求: 任意選擇一個(gè)文本文件,分析該文件,如果存在敏感詞匯(這些詞匯保存在 sentive.txt 文件中,每個(gè)詞 占一行 ,報(bào)告每個(gè)詞出現(xiàn)的次數(shù)。

17、基數(shù)排序過程動(dòng)畫演示 要求:使用圖形用戶界面

基數(shù)排序算法的實(shí)現(xiàn)過程參照《數(shù)據(jù)結(jié)構(gòu)》教材,動(dòng)畫效果強(qiáng)。可以采用最高位優(yōu)先算法實(shí)現(xiàn),也可以 采用最低位優(yōu)先算法實(shí)現(xiàn),人機(jī)交互、便于教學(xué)。

課程設(shè)計(jì)時(shí)間安排 序 號(hào)

時(shí) 間 實(shí)習(xí)主要內(nèi)容 實(shí)習(xí)地點(diǎn) 指導(dǎo)教師

1星期一 上午 概要設(shè)計(jì):確定項(xiàng)目的實(shí)施方案、設(shè) 計(jì)程序模塊連接圖、完成模塊功能描 述

實(shí)訓(xùn)室 劉延嶺

2星期一 下午 總體設(shè)計(jì):設(shè)計(jì)程序流程圖,完成數(shù) 據(jù)庫(kù)設(shè)計(jì)、方法設(shè)計(jì)

實(shí)訓(xùn)室 劉延嶺 3星期二 上午 詳細(xì)設(shè)計(jì):實(shí)現(xiàn)系統(tǒng)功能 實(shí)訓(xùn)室 劉延嶺 4星期二 下午 詳細(xì)設(shè)計(jì):實(shí)現(xiàn)系統(tǒng)功能 實(shí)訓(xùn)室 劉延嶺 5星期三 上午 詳細(xì)設(shè)計(jì):實(shí)現(xiàn)系統(tǒng)功能

實(shí)訓(xùn)室 劉延嶺 6星期三 下午 詳細(xì)設(shè)計(jì):實(shí)現(xiàn)系統(tǒng)功能 實(shí)訓(xùn)室 劉延嶺 7星期四 上午 系統(tǒng)功能完善,整合測(cè)試 實(shí)訓(xùn)室 劉延嶺 8星期四 下午 撰寫設(shè)計(jì)文檔 實(shí)訓(xùn)室 劉延嶺 9星期五 上午 撰寫設(shè)計(jì)文檔 實(shí)訓(xùn)室 劉延嶺 10星期五 下午 檢查驗(yàn)收 實(shí)訓(xùn)室 劉延嶺

計(jì)算機(jī)與信息工程系

《 JAVA 程序設(shè)計(jì)》課程設(shè)計(jì)(字為黑體四號(hào)粗 課程設(shè)計(jì)題目(黑體二號(hào)粗 專業(yè) 計(jì)算機(jī) 班級(jí) 1001班 學(xué)號(hào) 02 姓名;劉騰帥 E-Mail 電話 *** 時(shí)間

(字為黑體四號(hào)粗 承德石油高等專科學(xué)校(字為楷體四號(hào)粗

(報(bào)告正文為宋體,多倍行間距:1.25倍 摘要:(四號(hào)粗

內(nèi)容(小四號(hào)字

關(guān)鍵字:(小四號(hào)粗 內(nèi)容(小四號(hào)字 1.課程設(shè)計(jì)介紹(四號(hào)粗

對(duì)課程設(shè)計(jì)內(nèi)容做綜述,介紹課程設(shè)計(jì)的目的和要求等內(nèi)容。同時(shí)對(duì)課程設(shè)計(jì)小組成 員構(gòu)成進(jìn)行介紹,并說明自己在整個(gè)課程設(shè)計(jì)中將承擔(dān)的任務(wù)。2.系統(tǒng)設(shè)計(jì)(四號(hào)粗 內(nèi)容(小四 2.1需求分析 2.2總體設(shè)計(jì) 2.3功能設(shè)計(jì)

3.系統(tǒng)各功能模塊設(shè)計(jì)(四號(hào)粗(注:必要時(shí)應(yīng)分模塊(頁(yè)面描述 內(nèi)容(小四

4.1界面設(shè)計(jì)(必要時(shí)使用用戶組件 4.2功能實(shí)現(xiàn)

4.課程設(shè)計(jì)總結(jié)和體會(huì)(小四號(hào)粗 內(nèi)容(小四 5.致謝(四號(hào)粗 參考文獻(xiàn)(四號(hào)粗

內(nèi)容(小四內(nèi)容如下例所示:

小四

([1]博彥科技.編程高手 J2EE.北京大學(xué)出版社,2000.94-97 [2]http://www.tmdps.cn/learning/lesson/xinxi/20030401/lesson.asp 附錄(注:另起一頁(yè)

1.xx 功能模塊(頁(yè)面相關(guān)事件或方法程序清單(1 xx 事件或方法(2 xxxxxxxxxxxx 2.xx 功能模塊(頁(yè)面相關(guān)事件或方法程序清單(1xx 事件或方法(2 xxxxxxxxxxxx 成績(jī)?cè)u(píng)定

出勤情況(10分 界面設(shè)計(jì)(15分 功能實(shí)現(xiàn)(30分 創(chuàng)新點(diǎn)(15分 答辯情況(10分 設(shè)計(jì)報(bào)告(20分 設(shè)計(jì)評(píng)語(yǔ)

指導(dǎo)教師

第四篇:《Java程序設(shè)計(jì)課程設(shè)計(jì)》教學(xué)大綱1

《Java程序設(shè)計(jì)課程設(shè)計(jì)》教學(xué)大綱

Java Programming Course Design

課程代碼: I1101Y09

課程總周數(shù):

2-4

學(xué)

分:

課程性質(zhì):

必修

課程類別:

集中實(shí)踐環(huán)節(jié)

先修課程:

《 Java程序設(shè)計(jì) 》

面向?qū)I(yè):

信息管理與信息系統(tǒng)

開課單位 :

經(jīng)濟(jì)與管理學(xué)院

執(zhí)

筆:

校:

一、課程設(shè)計(jì)的地位與任務(wù)

《Java程序設(shè)計(jì)課程設(shè)計(jì)》是信息管理與信息系統(tǒng)專業(yè)必做的集中實(shí)踐性環(huán)節(jié)之一,是學(xué)習(xí)完《Java程序設(shè)計(jì)》課程后進(jìn)行的一次全面的綜合練習(xí)。其目的在于通過課程設(shè)計(jì),使學(xué)生能夠得到較系統(tǒng)的技能訓(xùn)練,從而鞏固和加深對(duì)Java 編程的基礎(chǔ)理論知識(shí)的理解,培養(yǎng)學(xué)生綜合運(yùn)用所學(xué)理論解決實(shí)際問題的能力,使學(xué)生成為具有扎實(shí)的計(jì)算機(jī)理論基礎(chǔ)和較強(qiáng)的獨(dú)立動(dòng)手能力的復(fù)合型、應(yīng)用型人才。

二、課程設(shè)計(jì)的內(nèi)容和基本要求

1、內(nèi)容:設(shè)計(jì)題目需要在老師課堂上演示的程序基礎(chǔ)上增加1-9個(gè)功能。

2、要求:

(1)學(xué)生兩到三人組成一組,每組必須獨(dú)立完成設(shè)計(jì)任務(wù),嚴(yán)禁抄襲或找人代做等行為,一經(jīng)發(fā)現(xiàn)成績(jī)以不及格計(jì)。

(2)課程設(shè)計(jì)期間要嚴(yán)格遵守學(xué)習(xí)紀(jì)律,遵守作息時(shí)間,不得遲到、早退和曠課,課程設(shè)計(jì)期間缺勤1/3以上者,成績(jī)以不及格記。

(3)課程設(shè)計(jì)報(bào)告每組學(xué)生上交一份課程設(shè)計(jì)報(bào)告打印稿(A4雙面打印)。每班以班級(jí)為單位交一張刻錄光盤,并且將光盤內(nèi)容每班學(xué)委打個(gè)壓縮包發(fā)老師郵箱。

該光盤包括每組的文件夾,其中包括每組的設(shè)計(jì)報(bào)告內(nèi)容以及每組獨(dú)立開發(fā)的軟件。每組的文件夾命名規(guī)則為“組長(zhǎng)名字_組員1名字_組員2名字”)。注意:光盤要有封皮,注明班級(jí)、小組總數(shù),一起上交。

三、教學(xué)安排與教學(xué)方法

依照教學(xué)計(jì)劃,課程安排在2或4周內(nèi)完成,共32學(xué)時(shí)。1.復(fù)習(xí)過去所學(xué)主要內(nèi)容(8學(xué)時(shí))

2.系統(tǒng)分析,主要核心功能及代碼設(shè)計(jì)(8學(xué)時(shí))3.剩余功能代碼實(shí)現(xiàn)、編程調(diào)試(12學(xué)時(shí))4.完成課程設(shè)計(jì)報(bào)告(4學(xué)時(shí))

四、考核方法及成績(jī)?cè)u(píng)定

1、考核類別:考查

2、考核形式:平時(shí)成績(jī)(20%)、課程設(shè)計(jì)報(bào)告及軟件驗(yàn)收(80%)。

3、成績(jī)?cè)u(píng)定:百分制,100分滿分,低于60分為不及格。

五、推薦教材與主要參考書 推薦教材

1、梁勇 :《Java語(yǔ)言程序設(shè)計(jì) 基礎(chǔ)篇(原書第8版)》,機(jī)械工業(yè)出版社,2012;

2、梁勇 :《Java語(yǔ)言程序設(shè)計(jì) 進(jìn)階篇(原書第8版)》,機(jī)械工業(yè)出版社,2012。

主要參考書

1、[美]塞若,[美]貝茨:《Head First Java(中文版)》,中國(guó)電力出版社,2007;

2、[美]埃克爾:《Java編程思想(第4版)》,機(jī)械工業(yè)出版社,2007;

3、[美]史蒂芬.約翰.梅特斯克:《Java設(shè)計(jì)模式(第2版)》, 電子工業(yè)出版社,2012。

第五篇:《Java語(yǔ)言程序設(shè)計(jì)》課程設(shè)計(jì)指導(dǎo)書

《Java語(yǔ)言程序設(shè)計(jì)》課程設(shè)計(jì)指導(dǎo)書

一、教學(xué)目標(biāo)

《Java語(yǔ)言程序設(shè)計(jì)》是計(jì)算機(jī)類專業(yè)和信息安全專業(yè)的專業(yè)課。Java語(yǔ)言是目前廣為流行的面向?qū)ο蟪绦蛟O(shè)計(jì)語(yǔ)言,適用于網(wǎng)絡(luò)編程,滿足Internet上軟件開發(fā)的需要。因此本課程是一門概念性和實(shí)踐性都很強(qiáng)的專業(yè)課程。本課程從基本程序設(shè)計(jì)流程出發(fā),逐步過渡到面向?qū)ο蟮某绦蛟O(shè)計(jì)方法,由淺入深地講解面向?qū)ο蟮木幊趟枷搿?/p>

java課程設(shè)計(jì)是鞏固所學(xué)理論知識(shí)、提高程序設(shè)計(jì)能力的重要實(shí)踐環(huán)節(jié)。通過課程設(shè)計(jì)的訓(xùn)練,使學(xué)生能夠綜合應(yīng)用Java的基礎(chǔ)知識(shí)和基本方法,體會(huì)軟件設(shè)計(jì)的全過程,編寫出高效率的應(yīng)用程序,培養(yǎng)學(xué)生的數(shù)據(jù)處理能力,提高軟件設(shè)計(jì)能力,從而為今后進(jìn)行系統(tǒng)軟件和應(yīng)用軟件的開發(fā)研究打下堅(jiān)實(shí)的基礎(chǔ),并倡導(dǎo)刻苦鉆研的精神和嚴(yán)謹(jǐn)?shù)闹螌W(xué)作風(fēng)。

二、教學(xué)要求

課程設(shè)計(jì)要求每位學(xué)生熟練運(yùn)用Java語(yǔ)言,按照面向?qū)ο蟪绦蛟O(shè)計(jì)思想,獨(dú)立編制一個(gè)略具規(guī)模、中等難度的應(yīng)用程序。調(diào)試通過并寫出課程設(shè)計(jì)報(bào)告,課程設(shè)計(jì)報(bào)告包括題目說明、題意分析、設(shè)計(jì)目的、設(shè)計(jì)特點(diǎn)、功能說明、主要功能程序段、運(yùn)行結(jié)果及結(jié)果分析、編程經(jīng)驗(yàn)、設(shè)計(jì)體會(huì)、存在問題及解決方法等。

三、課程設(shè)計(jì)題目

課程設(shè)計(jì)課題分推薦課題和其它課題:

推薦課題:javaweb開發(fā)的管理系統(tǒng)(圖書查詢系統(tǒng)、汽車租賃系統(tǒng)、倉(cāng)庫(kù)管理系統(tǒng)、人事管理系統(tǒng)等)

其它課題:javaswing開發(fā)的游戲、工具、管理系統(tǒng) 俄羅斯方塊、5子棋游戲、掃雷、模擬考試系統(tǒng)

2、設(shè)計(jì)要求

⑴ 獨(dú)立編制一個(gè)略具規(guī)模、中等難度的應(yīng)用程序。

⑵ 調(diào)試通過并寫出課程設(shè)計(jì)報(bào)告,課程設(shè)計(jì)報(bào)告包括題目說明、題意分析、設(shè)計(jì)目的、設(shè)計(jì)特點(diǎn)、功能說明、主要功能程序段、運(yùn)行結(jié)果及結(jié)果分析、編程經(jīng)驗(yàn)、設(shè)計(jì)體會(huì)、存在問題及解決方法等。

四、主要開發(fā)工具

Javaweb相關(guān)工具

五、課程設(shè)計(jì)報(bào)告要求

1.封面:按下面所給的格式填寫 2.正文要求如下:(1)題目說明;(2)題意分析;(2)設(shè)計(jì)目的;(3)設(shè)計(jì)特點(diǎn);(4)功能說明;(5)主要程序段;

(6)運(yùn)行結(jié)果分析以及測(cè)試結(jié)果(7)存在問題解決方法

(8)結(jié)束語(yǔ)(設(shè)計(jì)收獲體會(huì))3.報(bào)告正文格式要求: ·大標(biāo)題三號(hào)加粗 ·小標(biāo)題四號(hào)加粗 ·正文宋體小四號(hào)字

·每個(gè)自然段開始空兩格.·文中英文用新羅馬(time new roman),四號(hào)

4.其他要求:字?jǐn)?shù)5000字

六、提交的材料

(一)、程序(電子版)

(二)、程序設(shè)計(jì)說明書(打印)

七、課程設(shè)計(jì)成績(jī)?cè)u(píng)定

平時(shí)出勤及表現(xiàn): 10% 課程設(shè)計(jì)完成情況,難度等級(jí)60% 課程設(shè)計(jì)報(bào)告、文檔資料:30%

1、期末成績(jī)?cè)u(píng)定

實(shí)習(xí)成績(jī) = 實(shí)際操作、調(diào)試和測(cè)試(效果)+ 設(shè)計(jì)報(bào)告 +平時(shí)表現(xiàn)。

2、評(píng)定標(biāo)準(zhǔn)

(1)嚴(yán)格控制95分,其標(biāo)準(zhǔn)是有創(chuàng)意;(2)90分以上,必須全部正確;(3)有少許錯(cuò)誤,可給80—89;(4)錯(cuò)誤不多,可給60—79;

注:如甲、乙有拷貝、復(fù)印等抄襲現(xiàn)象,甲、乙均按0分處理。

下載Java程序設(shè)計(jì)課程設(shè)計(jì)學(xué)生考勤系統(tǒng)word格式文檔
下載Java程序設(shè)計(jì)課程設(shè)計(jì)學(xué)生考勤系統(tǒng).doc
將本文檔下載到自己電腦,方便修改和收藏,請(qǐng)勿使用迅雷等下載。
點(diǎn)此處下載文檔

文檔為doc格式


聲明:本文內(nèi)容由互聯(lián)網(wǎng)用戶自發(fā)貢獻(xiàn)自行上傳,本網(wǎng)站不擁有所有權(quán),未作人工編輯處理,也不承擔(dān)相關(guān)法律責(zé)任。如果您發(fā)現(xiàn)有涉嫌版權(quán)的內(nèi)容,歡迎發(fā)送郵件至:645879355@qq.com 進(jìn)行舉報(bào),并提供相關(guān)證據(jù),工作人員會(huì)在5個(gè)工作日內(nèi)聯(lián)系你,一經(jīng)查實(shí),本站將立刻刪除涉嫌侵權(quán)內(nèi)容。

相關(guān)范文推薦

    大學(xué)JAVA課程設(shè)計(jì)——學(xué)生信息管理系統(tǒng)

    沈陽(yáng)理工大學(xué)課程設(shè)計(jì) 沈陽(yáng)理工大學(xué)課程設(shè)計(jì) 摘要 Java語(yǔ)言是當(dāng)前最為流行的程序設(shè)計(jì)語(yǔ)言之一,諸多優(yōu)秀的的特性使其成為被業(yè)界廣泛認(rèn)可和采用的工具。本設(shè)計(jì)可以幫助同學(xué)掌......

    (騎士游歷)JAVA程序設(shè)計(jì)課程設(shè)計(jì)報(bào)告

    目錄 一 設(shè)計(jì)課題名稱 .......................................................................... 1 二 設(shè)計(jì)目的與意義 ................................................

    人事管理系統(tǒng)Java課程設(shè)計(jì)報(bào)告

    湖南科技大學(xué)計(jì)算機(jī)科學(xué)與工程學(xué)院 數(shù)據(jù)庫(kù)課程設(shè)計(jì)報(bào)告 題目:人事管理管理系統(tǒng) 學(xué) 號(hào):1005030221 姓 名:艾向兵 指導(dǎo)教師:張黎 完成時(shí)間:2012年1月4日 組員:蘇勇,成佳裕,艾向兵 企......

    JAVA課程設(shè)計(jì)員工信息管理系統(tǒng)

    JAVA員工管理系統(tǒng) 實(shí)驗(yàn)報(bào)告 姓名:張旭冉 學(xué)號(hào):10105010117 班級(jí):信10-1 北方工業(yè)大學(xué)理學(xué)院信息與計(jì)算科學(xué)系 2013年 12月 17日 員工管理系統(tǒng) 一、實(shí)驗(yàn)?zāi)康?通過該課程設(shè)計(jì),使......

    人員信息管理系統(tǒng) java課程設(shè)計(jì)

    大學(xué)人員信息管理系統(tǒng) 1 / 29 目錄 目錄 ................................................................................................................................

    Java課程設(shè)計(jì)

    統(tǒng)一要求: 設(shè)計(jì)成品 (按難度自選一個(gè)到兩個(gè)完成) 可分組或單獨(dú)完成,每組最多兩人,19周前交 1設(shè)計(jì)報(bào)告 (1)本程序的功能描述 (2)程序設(shè)計(jì)思想(數(shù)據(jù)結(jié)構(gòu)和各功能的實(shí)現(xiàn)辦法)......

    JAVA課程設(shè)計(jì)

    JAVA程序設(shè)計(jì)課程設(shè)計(jì)報(bào)告 目 錄 一、 項(xiàng)目背景及意義: ............................................... 2 二、 系統(tǒng)描述 ..................................................

    Java課程設(shè)計(jì)

    Java及J2EE課程設(shè)計(jì)題目 1、文件檔案管理 文件檔案管理系統(tǒng)主要對(duì)外來文件、下發(fā)文件和需要抄送的文件進(jìn)行統(tǒng)一管理。劃分為以下三個(gè)模塊:收文管理、發(fā)文管理、抄送文件。 1......

主站蜘蛛池模板: 东北粗壮熟女丰满高潮| 67194熟妇人妻欧美日韩| 色欲色香天天天综合网www| 久久久久久国产精品免费免费男同| 亚洲在av极品无码| 7878成人国产在线观看| 男人j放进女人p全黄动态图| 亚洲sss整片av在线播放| 欧美人与动牲交精品| 人妻夜夜添夜夜无码av| 中文字幕韩国三级理论无码| 国产成人无码av一区二区在线观看| 麻豆亚洲国产成人精品无码区| 久久久久久人妻一区精品| 好爽又高潮了毛片免费下载| 天天av天天av天天透| 国产午夜亚洲精品午夜鲁丝片| 日本真人添下面视频免费| 窝窝午夜看片成人精品| 亚洲国产精品一区二区成人片| 日本一本一区二区免费播放| 免费人成视频欧美| 久久亚洲色一区二区三区| 国产69精品久久久久孕妇| 国产福利姬精品福利资源网址| 亚洲精品成人久久久| 亚洲人成绝费网站色www吃脚| 亚洲欧洲偷自拍图片区| 国产激情电影综合在线看| 东北老女人高潮大叫对白| 一本大道东京热无码一区| 五月综合缴情婷婷六月| 动漫av网站免费观看| 成人免费视频在线观看地区免下载| 伊人久久大香线蕉av网禁呦| 久久精品午夜一区二区福利| 成人亚洲欧美丁香在线观看| 免费无码又黄又爽又刺激| 香港三级日本三级妇三级| 成人无码精品一区二区三区亚洲区| 精品国产一区二区三区av 性色|