当前位置:文档之家› java大作业报告

java大作业报告

java大作业报告
java大作业报告

西安思源学院

Java大作业

实验名称:贪吃蛇游戏设计

班级:11计算机科学与技术

学号:111102020104 111102020120 组员:

指导教师:王振铎

摘要 (3)

一:题目 (4)

1.1贪吃蛇游戏 (4)

1.2目的 (4)

1.3适应实际,实践编程的能力 (4)

1.4基本任务 (4)

1.5 要求 (5)

二:开发环境 (5)

2.1开发语言及实现平台或实验环境 (5)

2.2 开发工具 (5)

三:设计思路 (6)

3.1游戏主界面模块: (7)

3.2游戏控制模块: (7)

3.3性能: (7)

四:需求分析 (7)

4.1项目概述 (7)

4.2本项目主要功能有 (8)

4.3 可行性分析 (8)

4.4 其它需求 (9)

五:游戏设计流程图 (9)

5.1游戏流程图: (9)

5.2 游戏面板 (10)

第六:系统测试 (12)

5.1 测试的意义 (12)

6.2测试过程测试过程 (12)

6.3 测试结果 (13)

6.4 游戏最终代码 (13)

第七:心得体会 (17)

摘要

近年来,Java作为一种新的编程语言,以其简单性和平台无关性等优点,得到了广泛地应用,特别是Java与万维网的完美结合,使其成为网络编程和嵌入式编程领域的首选编程语言。它以其友好的开发界面、强大的组件支持等优点,得到广大程序员的接受和认可。

“贪吃蛇”游戏是一个经典的游戏,它因操作简单、娱乐性强而广受欢迎。本文基于Java技术和JBuilder开发环境,开发了一个操作简单、界面美观、功能较齐全的“贪吃蛇”游戏。整个游戏程序分为二个功能模块,实现了游戏的开始、结束。通过本游戏的开发,达到学习Java技术和熟悉软件开发流程的目的。

一:题目

1.1贪吃蛇游戏

1.2目的

1) 复习、巩固Java语言的基础知识,进一步加深对Java语言的理解和掌握

2) 掌握java程序设计的思想、流程,企业要求代码规范性及在项目中的应用

3) 加强理论知识和实际应用的结合应用,锻炼学生的分析解决实际问题的能力。提高学生设计的能力

1.3适应实际,实践编程的能力

1) 培养学生在项目开发中团队合作精神,表达沟通、创新意识能力

2) 提高学生的科技论文写作能力

1.4基本任务

1) 能在游戏面板中出现蛇和食物

2) 能通过键盘的上下左右键来控制蛇的移动

3) 蛇能够吃掉游戏面板中的食物,同时再随机出现另外一个食物

4) 蛇在碰到游戏面板的边缘时,游戏结束

5) 蛇在碰到自身时,游戏结束

1.5 要求

1) 对系统进行功能模块分析、控制模块分析正确,符合课题要求,实现相应功能;可以加以其他功能或修饰,使程序更加完善、合理

2) 系统设计要实用,编程简练、规范,可用,功能全面

3) 说明书、流程图要清楚,有解决问题办法总结

4) 要求上机调试通过

5) 设计上交内容:设计报告,源程序文件,可执行文件

二:开发环境

2.1开发语言及实现平台或实验环境

Windows2000 或XP,JDK1.6与Jcreator4.0

2.2 开发工具

Sun Microsystems公司在推出Java语言的同时,推出了一套开发工具JDK。Sun提供的基于字符模式的Java开发工具包JDK: Java 开发工具(JDK)是许多Java专家最初使用的开发环境。Java是平台无关的语言是指用Java写的应用程序不用修改就可在不同的软硬

件平台上运行。

所有的Java文件编辑、编译、调试、解释运行都是通过使用字符命令来执行操作。

JDK由一个标准类库和一组建立,测试及建立文档的Java实用程序组成。其核心Java

API是一些预定义的类库,开发人员需要用这些类来访问Java语言的功能。JDK 是整个

Java的核心,包括了Java运行环境(Java RuntimeEnvirnment),一堆Java工具和Java基础的类库(rt.jar)。不论什么Java应用服务器实质都是内置了某个版本的JDK。因此掌握JDK是学好Java的第一步。

JDK里面是java类库和java的语言规范,它提供的是无论你用何种开发软件写java程序都必须用到的类库和java语言规范.没有jdk,你的java程序根本就不能用。

而专门运行在x86平台的Jrocket在服务端运行效率也要比SunJDK好很多。但不管怎么说,我们还是需要先把Sun JDK掌握好。

三:设计思路

贪吃蛇游戏设计与实现,主要分为以下二个模块:游戏主界面模块和游戏控制模块。

在此只实现游戏的游戏主界面模块、游戏控制模块。并且只是实现移动速度、重新开始等功能。

3.1游戏主界面模块:

游戏的主界面是进入游戏后,能够给玩家第一感官的部分,主要包括游戏图形区域界面、游戏速度控制、重新开始游戏、速度等级以及当前分数。从很大程度上决定了玩家对游戏的兴趣问题,因此,游戏的主界面应该力求美观,爽心悦目。

3.2游戏控制模块:

这个模块是游戏的中心环节,主要完成控制游戏的速度、重新开始等功能。为了能够给玩家一个很好的游戏环境,这部分应该做到易懂、易操作。设计所开发的是基于Java的一个贪吃蛇游戏软件,主要实现游戏的速度控制。分为: 游戏主界面模块、游戏控制模块以二个模块。

3.3性能:

本软件在设计方面本着方便、实用及娱乐性高的宗旨,在对界面进行设计的过程中,始终坚持清晰明了,在性能方面能够实现效率高,不易出错等优点。

四:需求分析

4.1项目概述

本项目是开发贪吃蛇游戏,它是一个老少皆宜雅俗共赏的益智类游

戏,通过按键控制蛇的移动来吃食物,适于用户在空暇时刻放松身心休闲娱乐。

4.2本项目主要功能有

1.游戏:主要实现游戏的开始、继续、结束等功能,游戏开始,在游戏面板中出现蛇和食物,通过键盘的上下左右键来控制蛇的移动,并且蛇能够吃掉游戏面板中的食物,同时再随机出现另外一个食物,蛇每吃掉一个食物后,长度增1,而蛇在碰到游戏面板的边缘时,游戏结束,蛇在碰到自身时,游戏结束;但是如果蛇吃了穿身,穿墙宝贝的食物,蛇就具有了特殊功能,可以实现穿身,穿墙,游戏中可以随时暂停、继续、结束游戏,蛇的开始、暂停、继续、结束都是通过按钮来控制。

4.3 可行性分析

贪吃蛇游戏是一种简单的大众的游戏,自从计算机实现以来,深受广大电脑玩家的喜爱,做一个简单的贪吃蛇小游戏。

贪吃蛇的核心算法时如何实现移动和吃掉食物,没有碰到食物的时候,把当前运动方向上的下个节点入队,并以蛇节点的颜色绘制这个节点,然后把头指针所指的节点出队,并以游戏框架内部背景色重绘出队的节点,这样就可以达到移动的效果。而在吃到食物的时候,则只需把食物入队即可。实现贪吃蛇的基本的蛇身移动、吃到食物身体增长、和碰到墙壁或自身死亡,能够暂停和开始。

本次设计我将主要运用java语言来完成。Java语言是一种跨平台,适合于分布式计算环境的面向对象编程语言,用Java写的应用程序不用修改就可在不同的软硬件平台上运行。

由于Java主要用于网络应用程序开发,因此对安全性有较高的要求。如果没有安全保证,用户从网络下载程序执行就非常危险。Java 通过自己的安全机制防止了病毒程序的产生和下载程序对本地系统的威胁破坏。

4.4 其它需求

游戏界面应该力求友好、美观、操作简单

五:游戏设计流程图

5.1游戏流程图:

进入游戏界面

点击字母“Z”,游戏开始

蛇开始随机出现

键盘操作:

“左移”

“右移”

“向上”

“向下”

5.2 游戏面板

点击“Z ”游戏开始如图: 没有吃到食物且蛇碰到 边界或者自身 单击“Z ”游戏继续 游戏结束

按“”控制蛇的方向如下图:

蛇碰到边界游戏结束,出现“Game over”,如图:

第六:系统测试

5.1 测试的意义

系统测试是为了发现错误而执行程序的过程,成功的测试是发现了至今尚未发现的错误的测试。测试的目的就是希望能以最少的人力和时间发现潜在的各种错误和缺陷。应根据开发各阶段的需求、设计等文档或程序的内部结构精心设计测试用例,并利用这些实例来运行程序,以便发现错误。系统测试是保证系统质量和可靠性的关键步骤,是对系统开发过程中的系统分析系统设计和实施的最后复查。

6.2测试过程测试过程

(1)拟定测试计划。在制定测试计划时,要充分考虑整个项目的开发时间和开发进童以及一些人为因素和客观条件等,使得测试计划是可行的。测试计划的内容主要有测试的内容、进度安排、测试所需的

环境和条件、测试培训安排等。

(2)编制测试大纲。测试大纲是测试的依据。它明确详尽地规定了在测试中针对系统的每一项功能或特性所必须完成的基本测试项目和测试完成的标准。

(3)根据测试大纲设计和生成测试用例。在设计测试用例的时候,可综合利用前面介绍的测试用例和设计技术,产生测试设计说明文档。

(4)实施测试。测试的实施阶段是由一系列的测试周期组成的。在每个测试周期中,测试人员和开发人员将依据预先编制好的测试大纲和准备好的测试用例,对被测软件或设备进行完整的测试。

(5)生成测试报告。测试完成后,要形成相应的测试报告,主要对测试进行概要说明,列出测试的结论,指出缺陷和错误,另外,给出一些建议,如可采用的修改方法,各项修改预计的工作量及修改的负责人员。

6.3 测试结果

程序运行正常,没有发现什么错误。

6.4 游戏最终代码

package Game;

import java.awt.Color;

import java.awt.Font;

import java.awt.Graphics;

import java.awt.event.KeyEvent;

import java.awt.event.KeyListener;

import java.util.Random;

import javax.swing.JFrame;

import javax.swing.JPanel;

import javax.swing.*;

public class she extends JFrame{

MyPaint mp=null;

public static void main(String[] args) {

she she=new she();

}

public she(){

mp=new MyPaint();

Thread t1=new Thread(mp);//启动mp线程

t1.start();

this.add(mp);//加载面板

this.addKeyListener(mp);//加载按键监听

this.setSize(300,320);//窗口大小

this.setLocationRelativeTo(null); //居中

this.setTitle("贪吃蛇V1.0");

this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//点击关闭时,关闭程序

this.setVisible(true);//可见

}

}

class MyPaint extends JPanel implements KeyListener,Runnable{ yidong yd=new yidong();

public void paint (Graphics g){

super.paint(g);

g.setColor(Color.ORANGE);

g.fillRect(0, 0, 300, 260);

g.setColor(Color.black);

g.fillOval(yd.swx, yd.swy, 20, 20);

g.setColor(Color.red);

g.fillOval(yd.x[0], yd.y[0], 20, 20);//蛇头显示

g.setColor(Color.blue);

for(int i=1;i

g.fillOval(yd.x[i], yd.y[i], 20, 20);

}

g.drawString("当前分数: "+yd.fenshu, 190, 275);

g.drawString("速度等级: "+yd.lv, 10, 275);

g.setColor(Color.white);

if(yd.kaishi==0){ //当游戏结束时显示

g.setFont(new Font("黑体",1,20));

g.drawString("Game over", 90, 100);

g.setFont(new Font("幼体",1,15));

g.drawString("按Z键继续游戏!", 80, 120);

}

}

public void keyPressed(KeyEvent e) {

if(yd.kaishi==1){//当游戏进行时可控制

if(e.getKeyCode()==KeyEvent.VK_UP){

if(yd.fx!=2){yd.fx=8;}

}else if(e.getKeyCode()==KeyEvent.VK_DOWN){

if(yd.fx!=8){yd.fx=2;}

}else if(e.getKeyCode()==KeyEvent.VK_LEFT){

if(yd.fx!=6){yd.fx=4;}

}else if(e.getKeyCode()==KeyEvent.VK_RIGHT){

if(yd.fx!=4){yd.fx=6;}

}

}else{//当游戏结束时按Z 恢复游戏

if(e.getKeyCode()==KeyEvent.VK_Z){

yd.sum=4;

yd.x[0]=100;yd.y[0]=100;yd.x[1]=80;yd.y[1]=100;yd.x[2]=60;yd.y[2] =100;

yd.yanchi=200;yd.kaishi=1;yd.fx=6;yd.nfx=6;yd.sp=20;

}

}

}

public void keyReleased(KeyEvent arg0) {}

public void keyTyped(KeyEvent arg0) {}

public void run() { //刷新面板线程

Thread t2=new Thread(yd);

t2.start();

while(true){

try {Thread.sleep(10);}

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

this.repaint();

}}}

class yidong implements Runnable{ //蛇移动线程

int maxsum=128,sum=4,x[]=new int[maxsum],y[]=new int[maxsum],kaishi=1; //sum:代表蛇的总共长度是sum-1

int fx=1,nfx,sp=20,i=0,yanchi=200,fenshu;//方向fx :4=←6=→

8=↑ 2=↓其余:无移动

int swx=0,swy=0,shiwu=0;

String lv="1";

Random sj=new Random();

@Override

public void run() {

x[0]=100;y[0]=100;//初始化蛇坐标

while(true){

try {Thread.sleep(yanchi);}

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

if(shiwu==0){//随机产生食物

swx=(sj.nextInt(10)+1)*20;

swy=(sj.nextInt(10)+1)*20;

shiwu=1; }

if(kaishi==1){fenshu=sum*100-400;}//分数计算

for(int i=sum-1;i>0;i--){//身体坐标刷新

x[i]=x[i-1];

y[i]=y[i-1];

}

if(fx==6&&nfx!=4){//方向判断

x[0]+=sp;//移动

nfx=6;

}else if(fx==4&&nfx!=6){x[0]-=sp;nfx=4;}

else if(fx==2&&nfx!=8){y[0]+=sp;nfx=2;}

else if(fx==8&&nfx!=2){y[0]-=sp;nfx=8;}

else{if(nfx==6){x[0]+=sp;}

if(nfx==4){x[0]-=sp;}

if(nfx==2){y[0]+=sp;}

if(nfx==8){y[0]-=sp;}}

if(x[0]>270){x[0]-=sp;}

if(x[0]<0){x[0]+=sp;}

if(y[0]>255){y[0]-=sp;}

if(y[0]<0){y[0]+=sp;}

if(x[0]>swx-5&&x[0]swy-5&&y[0]

sum++;//增加长度

shiwu=0;

if(sum==10){yanchi=180;lv="2";}//加速

if(sum==20){yanchi=160;lv="3";}

if(sum==30){yanchi=150;lv="4";}

if(sum==40){yanchi=140;lv="5";}

if(sum==50){yanchi=130;lv="max";}

}

for(int i=sum-1;i>0;i--){//判断蛇是否吃到自己if(x[0]>x[i]-5&&x[0]y[i]-5&&y[0]

sp=0;

yanchi=500;

kaishi=0;

}

}

}

}

}

第七:心得体会

通过这次课程设计,我对这学期所学的JAVA语言程序设计有一个更深刻的了解,将所学的知识应用于实践,由于所学知识有限,为了使游戏能够实现自己预先的构想,我通过上网和去图书馆找程序,比较好的流程图及功能模块,不断阅读修改代码使程序达到预期所要实现的目标,完成课程设计后,可以感觉到自己对Java程序的又有了

新的认识。

在做Java设计之前也有做过其他的课程设计,大多规模很小。因为其各个模块间的联系十分紧密,代码重复执行率高,当经过无数次的调试、修改后,能最终看到成品,有无比自豪的心情。大学期间做过图书馆管理程序等简单的数据库管理系统的课程设计,思想大致相似,变化范围有限,没有太多自己可发挥的余地。综合运用以前所学习的知识,设计一个JAVA手机游戏,并能实现以下的功能:游戏暂停、游戏重新开始、游戏的结束。

总之,通过本次的课程设计,使我平时学到的理论知识得到了很好地升华,理论与实际得到一次很好的结合,为我今后参加工作打下了坚实的基础,使我受益匪浅。

JAVA《万年历系统》课程设计报告附源码

2013-2014学年第二学期《面向对象程序设计》 课程设计报告 题目:万年历系统 专业:计算机科学与技术 班级: : 学号: 指导教师: 成绩:

计算机与信息工程系2014年6月6日

目录 1 设计容及要求 (1) 1.1设计容 (1) 1.2设计任务及具体要求 (1) 2 概要设计 (2) 2.1程序设计思路 (2) 2.2 总体程序框图 (3) 3 设计过程或程序代码 (4) 3.1各个模块的程序流程图及运行界面 (4) 3.2对关键代码加以分析说明 (7) 4 设计结果与分析 (13) 4.1程序调试的结果 (13) 4.2程序设计分析 (13) 5 小结 (14) 致 (15) 参考文献 (16) 源程序 (17)

1 设计容及要求 1.1设计容 万年历,实际上就是记录一定时间围(比如100年或更多)的具体阳历或阴历的日期的年历,方便有需要的人查询使用。在我设计的万年历中主要有:(1)使用图形用户界面来查询用用户所需的日期信息,符合日常软件使用规。 (2)按月份查询,实现了显示查询1901~2100年某月所有日期的阴阳历对照。 (3)并且添加了重大节日与星座等信息,界面采用日常的星期与月份结合的格式,方便查看与使用。 (4)编写万年历的课程设计,是为了使同学们更加了解高级程序设计语言的结构,掌握基本的程序设计过程和技巧,掌握基本的分析问题和利用计算机求解问题的能力,具备初步的高级语言程序设计能力。为后续各门计算机课程的学习和毕业设计打下坚实基础。 1.2设计任务及具体要求 利用JAVA语言编写的万年历系统采用了多种JAVA语句来实现多种功能。用户可以通过本程序的applet运行界面来查找一整年某月的农历和阳历,可以查找用户所想了解的某一天具体为星期几,并且可以看到一些重大节日的具体时间。 要求:满足设计万年历系统的目的,即当用户查询年份与月份时,系统就要将这一年的某一月份的阴历与阳历全部显示出来,并且附带这一月份的重大节日。当用户随意改动年份或月份时系统自动显示与星期对应的日期。用户点击日

web应用开发期末报告

云南大学软件学院期末课程报告 Final Course Report School of Software, Yunnan University 个人成绩 学期:2014秋季学期 课程名称: Web技术及应用开发实践 任课教师: 李浩 大作业题目: 新闻发布系统 组长 : 联系电话: 电子邮件: 完成提交时间:2015年 1月 6 日作业截止时间:2015年 1月 6日

年级: 说明: 5分值:A:5分;B:4分;C:2—3分;D:0—1分 10分值:A:9—10分;B:6—8分;C:3—5分;D:0—2分 20分值:A:16—20分;B:11—15分;C:6—10分;D:0—5分

一、引论 1.项目背景及意义 随着网络的快速发展和普及,越来越多的用户习惯上网浏览新闻。本系统的主要目的就是为用户提供一个方便及时的网上新闻发布、浏览平台。利用本系统,用户可以直接在网上发布新闻信息并根据自己的需要对新闻进行检索。本系统遵循软件工程标准,并按照工程软件规定的流程进行项目的开发。主要实现了查看新闻功能、新闻搜索功能、发布新闻功能、管理员登录功能和新闻管理功能。其中管理员登陆实现了新闻,新闻类别以及系统用户的添加,删除,修改等功能。 2.创新难点 目前,网页制作如火如荼,网站建设热火朝天,社会的竞争是越来越激烈,JSP是一种很简单的、安全的、性能非常之高的、动态的脚本语言。JSP 可以用来开发Web应用程序,具有较高的执行效率,强大的数据库支持和网络支持名具有多平台特性和极大地开放性和扩充性,具有广泛的应用前景。 JSP技术有点类似ASP技术,它是在传统的网页HTML文件中插入Java程序段,从而形成JSP文件。用JSP开发的Web应用是跨平台的,既能在Linux 下运行,也能在其他操作系统上运行。JSP技术使用Java编程语言编写类XML的tags和scriptlets,来封装产生动态网页的处理逻辑。网页还能通过tags和scriptlets访问存在于服务端的资源的应用逻辑。JSP将网页逻辑与网页设计和显示分离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和容易。 二、背景 1.应用背景 在Internet飞速发展的今天,互联网成为人们快速获取、发布和传递信息的重要渠道,它在人们政治、经济、生活等各个方面发挥着重要的作用。 Internet上发布信息是通过网站来实现的,获取信息也是要在Internet中按照一定的检索方式将所需要的信息从网站上下载下来。因此网站建设在Internet应用上的地位显而易见,它已成为政府、企企事业单位信息化建设中的重要组成部分,从而倍受人们的重视。新闻发布系统利用JSP技术开发,其目的在于使新闻的发布和管理更加方便、实时、高效,从而提高工作效率。 随着互联网的进一步发展,网络媒体在人们心中的地位进一步提高,越来越多的用户习惯上网浏览新闻,本系统的主要目的就是为用户提供一个方便、及时的网上新闻发布、浏览平台。利用本系统,一方面用户可以直接在网上发布新闻信息并根据自己的组要对新闻进行浏览、检索、增加或修改。 另一方面,现在的新闻发布要求实现与普通用户交互,用户可以很方便的参加一些调查和相关新闻的评论,这一点也是其他一些媒体,如电台等无法做到的。本系统遵循软件工程标准,并按照软件工程规定的流程进行项目的开发。 2.技术背景

java课程设计 万年历 源代码

华北科技学院 课程设计报告 面向对象程序设计(Java) 班级: 电商B09-3 姓名: 周婷玉 设计题目:__________万年历________________ 设计时间: 2011-12-28 至2012-01-06 指导教师:_______ 郭慧____________ _____ 评语:_________________________________ _________________________________________ _________________________________________ _________________________________________ _________________________________________ 评阅成绩:___________评阅教师:_____________

课程设计说明书 1、课程设计的目的 a)掌握面向对象程序设计基本要素(封装、继承、多态) b)掌握JA VA语言常用类包及其常用方法和JA VA语言基本语法 c)掌握基于AWT的图形用户界面设计 i.常用标准控件的使用,如标签、按钮、菜单、文本框、单选按钮、 滚动条等。 ii.事件处理机制 d)掌握布局、对话框的使用 e)掌握发布JA VA应用程序 2、功能模块简介和系统结构图 需求分析:本程序的要求为: 1.使用图形用户界面 2.能够实现日期与星期的查询 3.实现当日的时间备忘 功能设计: 1.能以月历形式显示日期与星期 2.支持用户自己输入年份,并提供月份的下拉形式来选择查询 3.添加当日行事历,储存与清除功能

JAVA课程大作业文档模板

皖西学院 JA V A课程期末大作业 ( 2016 -- 2017 年度第二学期) 课程名称:JA V A程序设计 题目:备忘录系统 院系:电信学院 班级:电子1402班 组名:风尘三侠 组员(姓名+学号): 陈松龄(2014013860) 陈志康(2014013863) 贾林松(2014013870)授课教师:范祥林 日期:2017 年6 月18 日

备忘录系统 摘要: 本作业利用JAVA进行开发,实现个人备忘录管理系统是能够运行在普通个人电脑上,为使用者提供日常信息管理功能的工具软件,使用者可以通过个人备忘录管理系统对日常工作/生活琐事进行更有效的管理,主要是为使用者提供对个人信息更方便的记录和查询功能,为使用者在个人信息管理上带来更多的便利。具有日常记事:记录日常生活或者工作事件,以免遗忘,并提供记录的查询,添加和删除等管理功能。 一、目的与要求 1.需求描述:基于MySql实现备忘录系统功能。 2.通过实践训练,进一步掌握JAVA开发方法,测试方法,提高软件开发 和设计的能力。 3.进一步加强和提高工程文档的编写能力; 二、需求分析 本次系统采用结构化的设计方法进行设计,是设计成一个相对封闭的单机运行系统,作为大众化的应用软件,其用户界面是决定软件质量的首要条件。所以,界面设计是开发与设计的重点。充分贯彻简单易用、美观大方的基本原则,采用快速开发平台netbeans进行开发,并结合access数据库完成数据的导入。 NetBeans 平台是一种可重复使用的框架用于简化其他桌面应用程式的开发。当基于NetBeans 平台的应用被执行,平台主要类别的main方法便会被执行。可用的模组会被放置在存储器中,并且开始执行任务。通常模组会只在被需

Java大作业-简单的学籍管理系统

上海电力学院 期末作业:简单的学籍管理系统 课程: Web 应用程序设计 院系:电气工程学院_____________________ 专业:电力系统及其自动化_______________ 学生姓名:张富杰学号:17103060 指导教师:______________ 曹渝昆___________________ 2017年1月6日

目录 一、设计思路 (3) 二具体实现......................................................................... 3.. . 三运行调试与分析......................................................................... 3.. . 四设计体会与小结......................................................................... 8.. . 五程序代码......................................................................... 8.. .

、设计思路 随着社会经济的发展,入学的同学越来越多,为方便对同学学籍信息的的管理,设计学籍管理软件来管理本班级同学的学籍信息。该软件应支持添加、删除、修改、查询功能。 查询方式主要是支持学号查询,例如:输入“1”,则显示该学生的信息。 运用流式、卡片、整体布局方式对系统的主界面和各功能界面进行设计;通过连接数据库的方式来实现对数据的存储;各功能实现时访问数据库,并对数据信息进行读取,运用Java 语句对其进行输出,学号查询时显示在文本框中;系统提示功能用来提醒用户的错误操作和输入时的错误信息,提醒用户进行改正。 二具体实现 1.向班级里插入一个学生,但必须是插在已经建立的班级里。 2.输入学生信息,建立一个班级。 3.修改一个学生的所有资料。 4.删除某班的一个学生及其所有资料。 5.删除一个班级。 6.根据学生姓名查找某个学生信息。每种功能通过一个类来实现:类分分为主类、查询类、修改类、添加类、增加类。主类各功能界面的连接;精确查询类(SearchStude nt实现根据学生姓名查找某个学生信息;修改类(MdifyStude nt)实现修改一个学生的所有资料;添加类(AddStudent)实现向班级里插入一个学生,但必须是插在已经建立的班级里。;删除类(DeleteStudent)实现删除某班的一个学生及其所有资料。;删除类(DeleteClass) 实现删除一个班级;建立类(BuiltClasS实现输入学生信息建立一个班级。 三运行调试与分析 系统的详细设计代码请查阅附带的代码。以下仅对各个界面进行截图展示:

JAVA学生管理系统期末大作业

JA V A学生管理系统大作业 课程名称:JA V A编程基础 题目:学生信息管理系统 专业:计算机软件 班级:计算机软件121班 学号:8000612030 学生姓名:李俊楠 完成人数:1人 起讫日期:第十六周至第十八周 任课教师:龚根华职称:副教授 部分管主任: 完成时间:2015-1-2

目录 ------------------------------2 课题设计内容------------------------------3 程序功能简介 需求分析--------------------------------------------------3 总体设计---------------------------------------------------3 模块详细设计---------------------------------------------------4 数据库设计 ------------------------------5 主体内容 ------------------------------6 心得体会 -----------------------------11 参考书籍 -----------------------------12

一:课题设计内容 学生管理系统 学生信息管理系统是学校管理的重要工具,是学校不可或缺的部分。随着在校大学生人数的不断增加,教务系统的数量也不断的上涨。学校工作繁杂、资料众多,人工管理信息的难度也越来越大,显然是不能满足实际的需要,效率也是很低的。并且这种传统的方式存在着很多的弊端,如:保密性差、查询不便、效率低,很难维护和更新等。然而,本系统针对以上缺点能够极大地提高学生信息管理的效率,也是科学化、正规化的管理,与世界接轨的重要条件。所以如何自动高效地管理信息是这些年来许多人所研究的。 二:程序功能简介 2.1 需求分析 本系统需要实现的功能: (1)、管理员对学生信息和课程信息进行增加、删除、修改、查找等操作,对选课信息进行管理,对成绩信息和用户信息进行修改、查找等操作。 (2)、学生对学生信息和成绩信息进行查看,对个人的密码信息进行修改等。 2.2 总体设计 学生信息管理系统主要包括管理员和学生两大模块。管理员模块包括:学生信息管理、课程信息管理、选课信息管理、成绩信息管理、用户信息管理等。用户模块包括:学生信息查看、成绩信息查看、个人信息管理等。系统总体结构如图所示。 总体结构图 2.3 模块详细设计 1、学生信息管理模块 学生信息管理模块包括增加、删除、修改、查询、显示全部等。具体的结构图如图所

Java万年历课程设计报告

杭州师范大学钱江学院课程设计 题目万年历 学院钱江学院 专业信电分院计算机科学与技术 班级计算机1101 姓名崔伊平 指导教师王李冬 2013 年9 月20 日

目录 一.概述 (1) 二.总体方案设计 (2) 三.详细设计 (3) 四.最终输出 (7) 五.课程设计总结 (8) 参考文献 (9)

一、概述 1.课程设计的目的 通过显示年日历程序的设计,培养学生综合利用java语言进行程序设计的能力,加强函数的运用及学生对软件工程方法的初步认识,提高软件系统分析能力和程序文档建立、归纳总结的能力。 通过本项课程设计,可以培养独立思考、综合运用所学有关相应知识的能力,能更好的巩固《java语言程序设计》课程学习的内容,掌握工程软件设计的基本方法,强化上机动手编程能力,闯过理论与实践相结合的难关!更加了解了java语言的好处和其可用性! 2.课程设计的要求 2.1 输入查询的年份与月份,单击“更新”按扭,则可得到相应的日历。本实验是对图形用户界面,布局管理器的综合运用。要掌握APPLET容器中添加组件的方法,理解JAVA 的事件处理机制,编写独立的运行窗口。 2.2 输出形式 使用独立的运行窗口进行显示。界面主要由两部分组成——查询输入部分和结果显示部分。查询输入部分包括两个文本域,一个用于输入年份:一个用于选择月份:一个更新按扭,用来触发查询事件。

二总体方案设计 1.程序开发环境 a.开发环境:eclipse b.系统环境:windows xp/7 c.设计工具:Microsoft office 2003 2.整体流程图 图1 流程图 3.功能模块图

JAVA大作业

import java.util.Scanner; /*四则运算*/ class arithmetic{ privatedouble n1; privatedouble n2; publicdouble getN1() { return n1; } publicvoid setN1(double n1) { this.n1 = n1; } publicdouble getN2() { return n2; } publicvoid setN2(double n2) { this.n2 = n2; } double subtration(double n1,double n2){ return n1-n2; } double addition(double n1,double n2){ return n1+n2; } double multiplication(double n1,double n2){ return n1*n2; } double division(double n1,double n2){ return n1/n2; } public arithmetic(double n1,double n2){ this.getN1(); this.getN2(); } } /*计算三角函数值*/ class TriFun{ privatedouble x;

publicdouble getX() { return x; } publicvoid setX(double x) { this.x = x; } publicvoid sin(){ System.out.println("正弦值为"+Math.sin(x)); } publicvoid cos(){ System.out.println("余弦值为"+Math.cos(x)); } publicvoid tan(){ System.out.println("正切值为"+Math.tan(x)); } publicvoid asin(){ if(x>=-1&&x<=1) System.out.println("反正弦值为"+Math.asin(x)); else System.out.println("没有反正弦值!"); } publicvoid acos(){ if(x>=-1&&x<=1) System.out.println("反余弦值为"+Math.asin(x)); else System.out.println("没有反余弦值!"); } publicvoid atan(){ if(x!=0) System.out.println("反正切值为"+Math.atan(x)); else System.out.println("反正切值为PI/2="+Math.PI/2); } public TriFun(double x){ this.x=x; }

JAVA-课程设计(大作业)报告

课程设计(大作业)报告 课程名称:面向对象程序设计课程设计设计题目:设计一个记事本 院系:信息技术学院 班级: 设计者: 学号: 指导教师: 设计时间: 信息技术学院

昆明学院课程设计(大作业)任务书

简单记事本程序的设计 目录 一.题目分析 (5) 1.1需求分析 (5) 1.2功能要求设计 (5) 二.总体设计 (5) 2.1设计思路 (5) 2.2运行界面 (6) 2.3模块说明图 (6) 2.4主流程图 (7) 2.5 UML图 (7) 2.6程序相关说明 (8) 三.运行环境 (8) 四.详细设计与分析 (8) 4.1.初始化组件 (8) 4.2.构建菜单栏及其下拉菜单 (8) 4.3.“文件”菜单的事件监听 (9) 4.5.异常处理 (10) 五.调试分析 (12) 六.总结 (13) 七.参考文献 (14) 附录(源代码) (14)

一.题目分析 1.1需求分析 现在网络上各种文档编辑器数不胜数,有EmEditor ,UEStudio ,GridinSoft Notepad ,Notepad++,win32pad ,SkimEdit,UniRed, xint 。功能也是应有尽有,有的能改变字体,有的能改变文字颜色。但是,这些软件又存在各种各样的瑕疵或问题:有的文件体积相对于一般文字编辑来说太大;有的功能太繁杂,使初级使用者一时难以掌握。仅从日常应用方面来说,一个文本编辑器只需一些简单实用的功能就够了。本程序设计就是依照这样一种使用需要设计了一个简单的记事本程序。 该报告中的程序是使用Java程序编写,能够进行输入文字操作,并具有新建文件,打开文件,保存文件,退出,复制,粘贴,剪切等功能,不同之处是本程序能够对文字的颜色进行设置。该程序主要用到了Java swing和事件监听等。 1.2功能要求设计 设计一个记事本,能够进行输入文字操作,并具有新建文件,打开文件,保存文件,退出,复制,粘贴,剪切,查找替换等功能,可扩展功能。本程序要构建的记事本程序参照了Windows操作系统的记事本工具,其功能有以下几个方面: 5)菜单中有“文件”,“编辑”,“关于”三个主菜单。 6)“文件”有“新建”“打开”“保存”“退出”四个子菜单:分别用于新建文件,打开文件,保存文 件,退出记事本。 7)“编辑”中有“剪切”“复制”“粘贴”“颜色”四个子菜单:用于剪切文字,复制文字,粘贴文字 增加了“颜色”子菜单来对文字的颜色进行设置。 8)“关于”菜单中有关于记事本程序的制作日期,作者等信息,功能可自行增加。 提示:用图形用户界面实现,使用文件输入输出流。 二.总体设计 2.1设计思路 在本程序中,设计了一个菜单栏和文本内容区。设计过程中用到了JScrollPane,JMenu,JTextPane,JFileChooser等。JMenu用来制作菜单,菜单包括“文件”“编辑”“关于”。JTextPane主要用来输入文本。为了加入颜色的设置,所以加了一个JColorChooser组件。

JavaWeb期末大作业

西安欧亚学院2015—2016学年第二学期考试成绩评定表专业:软件工程课程:Web开发技术(Java)年级:14级

《Web开发技术(Java)》 大作业 姓名: 题目:Web开发技术大作业 专业:软件工程 班级: 日期:

目录 1.JSP开发概述 (1) 1.1.JSP M ODEL1 (1) 1.2.JSP M ODEL2 (1) 1.3.MVC设计模式 (2) 2.JSP MODEL1案例 (4) 2.1功能描述 (4) 2.2C ACULATOR类分析 (4) 2.3JSP页面代码分析 (4) 2.4功能实现 (4) 2.5测试用例设计 (6) 3.JSP MODEL2案例 (7) 3.1功能描述 (7) 3.2MVC架构分析 (7) 3.3M ODEL层类分析 (8) 3.4控制类分析 (8) 3.5V IEW层界面分析 (8) 3.6功能实现 (8) 3.7测试用例设计 (10)

1.JSP开发概述 1.1.JSP Model1 JSP Model 1采用了JSP+JavaBean的技术,将页面显示和业务逻辑分开。其中,JSP实现流程控制和页面显示,JavaBean对象封装数据和业务逻辑。接下来通过一张图来描述JSP Model 1的工作原理,如图1-1所示。 图1-1 JSP Model 1模型的工作原理图 从图1-1中可以看出,JSP Model 1模型将封装数据以及处理数据的业务逻辑的任务交给了JavaBean组件,JSP只负责接受用户请求和调用JavaBean的组件来响应用户的请求,这种设计实现了数据,业务逻辑和页面显示的分离,在一定程度上实现了程序开发的模块化,降低了程序修改和维护的难度。 1.2.JSP Model2 JSP Model 2架构模型采用JSP+Servlet+JavaBean的技术,此技术将原本JSP 页面中的流程控制代码提取出来,封装到Servlet中,从而实现了整个程序页面显示、流程控制和业务逻辑的分离。实际上JSP Model 2模型就是MVC设计模式,其中控制器的角色是由Servlet实现,视图的角色是由JSP页面实现,模型的角色是由JavaBean实现。接下来通过一张图来描述Model 2的工作原理,如图1-2所示。 从图1-2中可以看出,Servlet充当了控制器的角色,它接受用户请求,并实例化JavaBean对象封装数据和对业务逻辑进行处理,然后将调用JSP 页面显示JavaBean中的数据信息。

Java课程设计-万年历

河北科技大学课程设计报告 号:学生姓名:学 专业班级:程序设计课程设计Java课程名称:学期学年第 2 2 015 学年学期: 2 014 — 指导教师:刘伟月年 2 0

的?.................................................................. ................................1?? 2.需求分................................................................... .........析................................1? 3.总体设计................................................................... ........................................1? 4.详细设计................................................................... ........................................1?

5.软件测试................................................................... . (10) 6.课程设计总结................................................................... ................................11. 一、课程设计目的(1)熟练使用java语言编写程序,解决实际问题。? (2)初步掌握软件开发过程的问题分析、系统设计、程序编码、测试等基本方法和技能;? (3)学会自己调试程序的方法并掌握一定的技巧。 二、需求分析本程序的要求为: 1.使用图形用户界面;? 2.本程序能够实现日期与星期的查询。 ?三、总体设计(1)可以通过图形界面显示日历。? (2)能以月历形式显示日期与星期。? (3)支持用户自己输入年份,可以通过上一年,下一年等按钮来选择年份和月份。? ?四、详细设计1.总天数的算法:首先用if语句判断定义年到输入年之间每一年是否为闰年,是闰年,该年的总天数为366,否则,为365。 ,0若是取余得几既为星期几,7使总天数除以输出月份第一天为星期几的算法:2. 则为星期日。? 3.算出输出月份第一天为星期几的算法:算出输出月份第一天为星期几后,把该日期以前的位置用空格补上,并总该日起一次输出天数直到月底,该月中的天数加上该月一日为星期几的数字再除以7得0换行,即可完整的输出该月的日历。? 4.查询年份必须为四位有效数字,否则不予显示。 程序源代码: import import import import import import; import import import ; import ; import import import java.awt.*; import import java.text.*; import ;

《JAVA WEB程序设计》报告模板

南京晓庄学院《JAVA WEB程序设计》 课程报告 题目: 学生信息管理系统 姓名: 沈莉莉 学号: 13131320 班级: 13计算机转本1班 完成时间2016年6月23号 成绩: 数学与信息技术学院

目录 1.系统需求分析 (1) 2.相关技术与原理介绍 (1) 3.系统分析与设计 (2) 3.1 系统功能分析 (2) 3.2 系统结构分析 (2) 3.3 数据库设计 (3) 4.系统实现 (4) 4.1 登录模块实现 (4) 4.2 教师模块实现 (6) 4.3 成绩模块实现 (7) 4.4 学生模块实现 (8) 5.总结与体会 (11) 5.1 工作总结 (11) 5.2 改进设想 (11)

1.系统需求分析 (对系统的功能需求进行分析) 在本次的实验中主要用到了Eclipse、Mysql、Tomcat等软件。用JSP和JAVABEAN 编写代码,编写完的低吗主要用来实现教师、学生、成绩以及课程的查询、修改、删除等操作。 2.相关技术与原理介绍 (对Tomcat、MySQL、JSP、JDBC、JAVABEAN等技术进行简要介绍) 2.1、Tomcat简介 Tomcat服务器是一个免费的开放源代码的Web应用服务器,属于轻量级应用服务器,在中小型系统和并发访问童虎不是很多的场合下被普遍使用,是开发和调试JSP程序的首选。对于一个初学者来说,当一台机器上配置好Apache服务器,可利用它响应HTML(标通用标记语言下的一个应用)页面访问的请求。实际上Tomcat部分是Apache服务器的扩展,但它是独立运行的,所以当你圆形tomcat时,它实际上是作为一个与Apache独立的进程单独运行。 2.2、MySQL的简介 MySQL是一个小型关系数据库管理系统,它的主要特性如下: (1)支持多线程,充分利用CPU资源。 (2)一共TCP/IP、ODBC和JDBC等多种数据库连接途径。 (3)使用C和C++编写,并使用了多种编译器进行测试,保证源代码的可移植性。 2.3、JSP的简介 JSP技术使用Java编程语言编写类XML的tags和scriptlets,来封装产生动态网页的处理逻辑。网页还能通过tags和scriptlets访问存在于服务端的资源的应用逻辑。JSP将网页逻辑与网页设计的显示分离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和容易。 JSP(JavaServer Pages)是一种动态页面技术,它的主要目的是将表示逻辑从Servlet中分离出来。Java Servlet是JSP的技术基础,而且大型的Web应用程序的开发需要Java Servlet 和JSP配合才能完成。JSP具备了Java技术的简单易用,完全的面向对象,具有平台无关性且安全可靠,主要面向因特网的所有特点。 2.4、JDBC的简介 JDBC 扩展了 Java 的功能。例如,用 Java 和 JDBC API 可以发布含有 applet 的网页,而该 applet 使用的信息可能来自远程数据库。企业也可以用 JDBC 通过 Intranet 将所有职员连到一个或多个内部数据库中(即使这些职员所用的计算机有 Windows、 Macintosh 和UNIX 等各种不同的操作系统)。随着越来越多的程序员开始使用Java编程语言,对从 Java 中便捷地访问数据库的要求也在日益增加。

Java程序设计大作业实验报告

目录 一、前言 (2) 二、需求分析 (3) 三、系统总体设计 (3) 3.1系统总体设计系统思路 (3) 3.2数据库设计 (4) 3.2.1 login1表的设计和数据 (4) 3.2.2 student表的设计和数据 (5) 3.2.3 course表的设计和数据 (5) 3.2.4 score表的设计和数据 (6) 3.3系统功能模块设计 (6) 四、系统详细设计 (7) 4.1登录模块 (7) 4.2 学生模块 (7) 4.3 教师模块 (8) 4.4 管理员模块 (8) 五、系统测试及运行结果 (9) 5.1 主界面 (9) 5.2 学生管理中心界面 (9) 5.3 教师管理中心界面 (10) 5.4 管理员管理中心界面 (10) 5.5 查询课表界面 (11) 5.6 查询成绩界面 (11) 5.7 查询教学情况界面 (11) 5.8 查询所有学生成绩界面 (12) 5.9 学生信息管理界面 (12) 5.10 学生成绩管理界面 (13) 5.11 用户管理界面 (13) 六、实验总结 (14) 七、参考文献 (14)

一、前言 随着计算机在人们生活中的普及和网络时代的来临,对信息的要求日益增加,学生信息管理业务受到了较为强烈的冲击,传统的手工管理方式传统的手工管理方式已不能适应现在的信息化社会。如何利用现有的先进计算机技术来解决学生信息管理成为当下的一个重要问题,学生信息管理系统是典型的信息管理系统,其开发主要就是针对前台的页面展示以及后台数据的管理。对于前者,要求应用程序功能完备,易于使用,界面简单;而对于后者,则要求数据库具有一致性、完整性,并能够依据前台的操作来对应操作后台数据库达到一定的安全性。 本学生信息管理系统主要采用的纯JAVA代码实现图形界面系统的开发,以及数据库知识进行数据的查询,删除,插入和更新。本系统主要分为三个部分:学生模块、教师模块、管理员模块。其中学生模块实现的功能:查询课表信息和查询成绩。教师模块实现的功能:查询课表信息、查询教学情况和查询所有学生的各科成绩。管理员模块实现的功能:课表信息的管理、学生信息管理、学生成绩管理和用户信息管理。

JAVA期末大作业

JAVA期末大作业 1.圆柱体: import java.util.*; public class cylinder { public static void main(String[] args) { double radius,height; final double PI=3.14; double area,volume; Scanner s=new Scanner(System.in); radius=s.nextDouble(); height=s.nextDouble(); area=2*PI*radius*radius+2*PI*radius*height; volume=PI*radius*radius*height; System.out.println("area="+area); System.out.println("volume="+volume); } } 结果: 2.heap: import java.util.*; public class heap { public static boolean isYearHeap(int x){ if(x%4==0||x%400==0){ return true; }else{ return false;

} } public static void main(String args[]){ int i; Scanner s=new Scanner(System.in); i=s.nextInt(); if(isYearHeap(i)){ System.out.println("Heap"); }else{ System.out.println("Not a heap year"); } } } 结果: 3.符号: import java.util.*; public class test { public static void main(String[] args) { int a=60;/*60=0011 1100*/ int b=13;/*13=0000 1101*/ int c=0; c=a&b;/*12=0000 1100*/ System.out.println("a&b="+c); c=a|b; System.out.println("a|b="+c); c=a^b; System.out.println("a^b="+c); c=~a; System.out.println("~a="+c); c=a<<2;

程序设计大作业报告模板

~ … 学院你的学院班级你的班级学号你的学号 姓名 ¥ 你的姓名 摘要 /*请你先撰写摘要,它简要叙述了你的大作业内容、基本设计思路、完成情况和使用到的新技术、新思想,还有你自己对你自己结果的评价等。*/ /*注意:这个文档中有许多这样的注释(象C一样),它的目的是引导你正确写作这份报告,因此,在报告完成后,请将这些注释信息删除,但是不要损坏那些正式的内容和排版格式*/ /*这页是封面*/ } /*在Word“文件”/“属性”菜单上,打开属性对话框,将你的邮件地址填入“作者”栏中,则页脚中的信息回自动改变过来。*/ /*这个Word的文件名按下面的规则重命名(本次程序设计报告与程序等全部资料由计算机归档,因此请你按要求编写):2008IE_你的班级_你的学号_你的姓名.DOC 例如:班李小明(76)应为: 2008IE__76_李小明.DOC

当报告与程序全部完成后,将本Word文件和程序压缩包文件上传到网络硬盘中的“大作业”文件夹上。*/ :

目录 1 摘要 (3) 设计题目 (3) 设计内容 (3) 开发工具 (3) 。 应用平台 (3) 2 详细设计 (3) 程序结构 (3) 主要功能 (3) 函数实现 (3) 开发日志 (4) 3 程序调试及运行 (4) 程序运行结果 (4) : 程序使用说明 (4) 程序开发总结 (4) 4 附件(源程序) (4) /*在后面的文档编写中,请你不要修改各个标题的内容,从而确保报告内容和风格一致。完成全部内容后,你只需要在上面的目录上右键“更新域”,选择“只更新页码”就可以更新正确的目录页码。注意:目录的左边距为厘米。*/

设计模式大作业报告

《设计模式》课程大作业报告 姓名:陈明 专业:软件工程 班级:1202 日期:2015年5月29日

西安欧亚学院2014—2015学年第二学期考试试卷 专业:软件工程 课程:设计模式 年级:12级 完成一个综合项目程序,其中使用所学设计模式两个或者两个以上。要求在文档中首先给出项目程序完成的功能或者解决的问题,然后详细说明模式使用的具体情况,即角色和相应程序代码。文档赋分标准如下: 1、程序功能阐述明确,分析清楚。(15分) 2、使用两种设计模式,使用得当,并给出相应的角色及程序代码,程序代码有恰当的注释。(60分) 3、文档格式正确,排版清晰。(15分) 4、如果使用超过两种设计模式,并且使用正确。(10分) 说明:以上总分为个人的期末成绩,本课程个人总成绩=平时成绩*40%+期末成绩*60%。 号_____________ 班级___________ 姓名________ 考场号____ 座位号____ - - - - - - - - - - - - - - - - - - - - - - - 密 ○- - - - - - - - - - - - - - - - - - - - - - - - 封 ○ - - - - - - - - - - - - - - - - - -- - - - - - 线 ○ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

Java课程设计-万年历

河北科技大学 课程设计报告 学生姓名:学号: 专业班级: 课程名称:Java程序设计课程设计 学年学期:2 014 —2 015 学年第2 学期指导教师:刘伟 2 0 年月

课程设计成绩评定表 学生姓名学号成绩专业班级起止时间 设计题目 指导教师评语学习态度:端正□较端正□一般□较差□ 学习纪律:好□较好□一般□较差□ 出勤情况:好□较好□一般□较差□ 程序设计:好□较好□一般□较差□ 动手能力:强□较强□一般□较差□ 团队精神:好□较好□一般□较差□ 创新意识:强□较强□一般□较差□ 课程设计完成情况:优秀□好□一般□较差□ 课程设计报告完成情况:优秀□好□一般□较差□ 指导教师: 年月日

目录 1.课程设计目的 (1) 2.需求分析 (1) 3.总体设计 (1) 4.详细设计 (1) 5.软件测试 (10) 6.课程设计总结 (11)

一、课程设计目的 (1)熟练使用java语言编写程序,解决实际问题。 (2)初步掌握软件开发过程的问题分析、系统设计、程序编码、测试等基本方法和技能; (3)学会自己调试程序的方法并掌握一定的技巧。 二、需求分析 本程序的要求为: 1.使用图形用户界面; 2.本程序能够实现日期与星期的查询。 三、总体设计 (1)可以通过图形界面显示日历。 (2)能以月历形式显示日期与星期。 (3)支持用户自己输入年份,可以通过上一年,下一年等按钮来选择年份和月份。 四、详细设计 1.总天数的算法:首先用if语句判断定义年到输入年之间每一年是否为闰年,是闰年,该年的总天数为366,否则,为365。 2.输出月份第一天为星期几的算法:使总天数除以7取余得几既为星期几,若是0,则为星期日。 3.算出输出月份第一天为星期几的算法:算出输出月份第一天为星期几后,把该日期以前的位置用空格补上,并总该日起一次输出天数直到月底,该月中的天数加上该月一日为星期几的数字再除以7得0换行,即可完整的输出该月的日历。 4.查询年份必须为四位有效数字,否则不予显示。 程序源代码: import java.awt.BorderLayout; import java.awt.Color;

Java终极大作业报告

Java语言程序设计展示报告 学院 专业 组长信息 组员信息1 组员信息2 组员信息3 指导教师 日期年月日

目录 第一章选题概述 (1) 第二章完成情况 (2) 第三章成果展示 (3) 一、登陆注册界面展示 (3) 1、效果截图 (3) 2、核心代码 (4) 二、客户端界面展示 (5) 1、效果截图 (8) 2、核心代码 (8) 三、服务端界面展示 (4) 1、效果截图 (3) 2、核心代码 (3) 四、数据库直连和文件线程 (10) 第四章总结与感受 (12)

第一章选题概述 在一学期的Java课程学习之后,我们对Java语言有了一定的认识与了解。在此基础上我们选择了题目一作为本组的目标,题目的相关要求如下(初期拟完成目标): 设计编程实现桌面文档共享与管理系统(100%)实现以下功能-- 1.能够实现文件的下载与上传(客户端与服务器端) 2.能够通过安全认证与别人分享文档 3.能形成“圈子”,对朋友或这陌生人设置不同的安全级 别 4.能够共享桌面与聊天 5.必须用数据库存储信息 6.必须用extends 和 implements 关键字 7.必须用this关键字 8.必须用图形用户界面 9.界面设计与功能不限,充分发挥 题目一比较有挑战性,题目中的要求几乎涉及到了我们学过的所有知识,除此之外还需要我们课外学习一些课堂额外的知识,比如数据库的创建于连接。由组长XXX1负责整合所学容与指挥,组员查阅资料并编写程序,再和组长讨论并完成各自的模块设计。我们设计了如下的流程图:

图1-1 流程图 第二章完成情况 经过将近一个月左右的编程设计,我们实现的桌面文档共享与管理系统(90%)实现了以下功能-- 1.能够实现文件的上传(客户端与服务器端) 2.能够通过安全认证与别人分享文档 3.能形成“圈子”,对朋友或这陌生人设置不同的安全级 别 4.能够聊天并截取屏幕信息

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