java课程设计报告java Eclipse PowerDesigner实现文件分割合并功能Word下载.docx

上传人:b****6 文档编号:19262667 上传时间:2023-01-04 格式:DOCX 页数:18 大小:291.17KB
下载 相关 举报
java课程设计报告java Eclipse PowerDesigner实现文件分割合并功能Word下载.docx_第1页
第1页 / 共18页
java课程设计报告java Eclipse PowerDesigner实现文件分割合并功能Word下载.docx_第2页
第2页 / 共18页
java课程设计报告java Eclipse PowerDesigner实现文件分割合并功能Word下载.docx_第3页
第3页 / 共18页
java课程设计报告java Eclipse PowerDesigner实现文件分割合并功能Word下载.docx_第4页
第4页 / 共18页
java课程设计报告java Eclipse PowerDesigner实现文件分割合并功能Word下载.docx_第5页
第5页 / 共18页
点击查看更多>>
下载资源
资源描述

java课程设计报告java Eclipse PowerDesigner实现文件分割合并功能Word下载.docx

《java课程设计报告java Eclipse PowerDesigner实现文件分割合并功能Word下载.docx》由会员分享,可在线阅读,更多相关《java课程设计报告java Eclipse PowerDesigner实现文件分割合并功能Word下载.docx(18页珍藏版)》请在冰豆网上搜索。

java课程设计报告java Eclipse PowerDesigner实现文件分割合并功能Word下载.docx

2.3系统详细设计6

2.3.1使用的java系统类说明6

2.3.2自定义类及方法说明6

2.4系统测试分析14

2.4.1系统运行测试14

2.4.2系统测试结果分析16

第3章课程设计总结17

参考文献18

第1章课程设计的目的与要求

课程设计的目的

《JAVA面向对象程序设计》是计算机相关专业的必修专业基础课程,其实践性、应用性很强。

实践教学环节是必不可少的一个重要环节。

本课程的程序设计专题实际是计算机相关专业学生学习完《JAVA面向对象程序设计》课程后,进行的一次全面的综合训练,JAVA程序设计的设计目的是加深对理论教学内容的理解和掌握,使学生较系统地掌握程序设计及其在网络开发中的广泛应用,基本方法及技巧,为学生综合运用所学知识,利用软件工程为基础进行软件开发、并在实践应用方面打下一定基础。

课程设计的实验环境

本课程设计借助的硬件环境为能运行WindowsXP、Vista或Windows7的微机系统,软件需求为Eclipse代码编辑器、PowerDesigner类图设计软件。

课程设计的预备知识

熟悉《JAVA面向对象程序设计》教材,熟悉Eclipse软件和PowerDesigner软件的功能并能熟练运用。

课程设计的要求

按课程设计指导书提供的课题,要求学生在自行完成各个操作环节,并能实现且达到举一反三的目的,完成一个项目解决一类问题。

要求学生能够全面、深入理解和熟练掌握所学内容,并能够用其分析、设计和解答类似问题;

对此能够较好地理解和掌握,能够进行简单分析和判断;

能编写出具有良好风格的程序;

掌握JAVA程序设计的基本技能和面向对象的概念和方法;

了解多线程、安全和网络等编程技术。

同时培养学生进行分析问题、解决问题的能力;

培养学生进行设计分析、设计方法、设计操作与测试、设计过程的观察、理解和归纳能力的提高。

第2章课程设计的内容

设计内容概述

设计目标

本次课程设计内容为设计一个文件分割、合并器。

实现对任意文件的分割,并且能够对分割后的文件进行合并还原。

并将处理后的文件存入指定路径的目录当中。

实现系统托盘,最小化时到系统托盘。

设计思路

要实现对任意文件的分割,这就需要找到所有文件的共同之处。

其实,也很简单,我们把文件都看作是一连串的字节流组成的即可。

利用java.io包中的FileOutputStream和FileInputStream对文件进行字节流的读写。

文件和并,通过对欲合并文件的辨认(本程序通过后缀“-split”来确定),将分割后的文件加入一个ArrayList<

File>

中,利用迭代器用文件分割同样的道理进行合并还原。

系统概要设计

系统开发环境

开发平台:

MicrosoftWindowsXPProfessionalServicePack2

开发工具:

PowerDesigner11.0+JDK1.6.0_02+Eclipse

系统主界面设计

软件主界面如图2.1A和2.1B所示。

图2.1A软件分割功能主界面图

图2.1B软件合并功能主界面图

系统功能说明

1、软件功能特点

(1)可以实现对系统磁盘中的任意文件的分割。

(2)可以实现对系统磁盘中的任意文件的合并。

(3)可以将指定文件按大小或按数目进行分割。

(4)可以按不同的单位量对文件进行分割。

(5)可以设置文件分割时参数。

(6)可以将处理后的文件存入指定的磁盘路径中。

(7)可以调用系统的计算器在文件处理时帮助计算相关数据。

(8)在文件处理过程中显示相关处理状态的信息。

2、工作流程图

系统工作流程图如图2.2所示。

图2.2系统工作流程图

类图ClassDiagram设计

系统的类图设计如图2.3所示。

图2.3类图ClassDiagram

系统详细设计

使用的java系统类说明

本软件的设计使用到的java系统类为以下包中的类:

(设计代码)

importjava.awt.*;

importjava.awt.event.*;

importjava.io.*;

import.*;

importjava.sql.Date;

importjava.util.*;

importjavax.swing.*;

importjavax.swing.border.LineBorder;

其中主要的类为JFrame、Canvas。

使用到的java系统中接口有四种:

WindowListener、ActionListener、ItemListener、ActionListener。

自定义类及方法说明

1、类名:

FileCut

作用:

自定义的主类。

继承的父类:

JFrame类。

实现的接口:

Cloneable接口。

publicclassFileCutextendsJFrameimplementsCloneable{

publicFileCut(){//构造函数}

publicstaticvoidmain(String[]args){//主函数}

}

2、类名:

BrowseSourceFile

自定义的类,实现浏览文件或文件夹的功能,当找不到指定文件或文件夹时捕获异常。

没有。

ActionListener接口。

classBrowseSourceFileimplementsActionListener{

publicvoidactionPerformed(ActionEvente){

try{}

catch(Exceptionex){}

弹出浏览窗口如图2.4A和2.4B所示。

图2.4A分割文件时选择目标文件浏览窗口

图2.4B合并文件时选择目标文件浏览窗口

3、类名:

SplitItemListener

自定义的类,实现分割文件的功能。

ItemListener接口。

classSplitItemListenerimplementsItemListener{//分割文件功能

publicvoiditemStateChanged(ItemEvente){

4、类名:

UnionItemListener

自定义的类,实现合并文件的功能。

classUnionItemListenerimplementsItemListener{//合并文件功能

5、类名:

BigOrSmallItemListener

自定义的类,实现在分割文件时按大小分割的功能。

classBigOrSmallItemListenerimplementsItemListener{//按大小分割

6、类名:

FileNumberItemListener

自定义的类,实现在分割文件时按数目分割的功能。

classFileNumberItemListenerimplementsItemListener{//按数目分割

7、类名:

SourceActionListener

自定义的类,对文件进行不同方式处理时设定对象限制,即在分割处理时只能选择指定文件,在合并处理时可选择文件或文件夹,当指定目标为空时或找不到指定文件或文件夹时捕获异常。

classSourceActionListenerimplementsActionListener{//源文件

catch(NullPointerExceptionnpe){

return;

//直接关闭窗体退出的情况}

catch(Exceptionexception){

FileCut.message.setText("

找不到指定文件或文件夹!

"

);

8、类名:

TargetActionListener

自定义的类,实现将处理后的文件存放到指定路径的文件当中的功能。

classTargetActionListenerimplementsActionListener{

弹出的浏览窗口如图2.5A和2.5B所示。

图2.5A分割文件时指定存储位置浏览窗口

图2.5B合并文件时指定存储位置浏览窗口

9、类名:

CalcuAction

自定义的类,实现调用微机系统中计算器的功能。

classCalcuActionimplementsActionListener{

10、类名:

EnterAction

自定义的类,实现“确定”按钮的功能,对文件进行相关处理。

classEnterActionimplementsActionListener{

publicvoidactionPerformed(ActionEvente){//调用核心功能代码

if(FileCut.operateKind==1)

ProcessFile.cutFile();

else

ProcessFile.unionFile();

11、类名:

CancelAction

自定义的类,实现“取消”按钮的功能,所有编辑框以及信息提示框清空。

classCancelActionimplementsActionListener{

FileCut.JTextField1.setText("

FileCut.JTextField2.setText("

FileCut.JTextField3.setText("

12、类名:

ClearAction

自定义的类,实现“重置”按钮的功能,所有编辑框清空。

classClearActionimplementsActionListener{

13、类名:

ProcessFile

自定义的类,实现在对文件分割或合并时显示相关处理状态和结果的功能。

classProcessFile{

publicstaticvoidcutFile(){//文件分割}

publicstaticvoidunionFile(){//文件合并}

14、类名:

MyCanvas

自定义的类,用于实现对软件主界面顶部图片的添加功能。

Canvas类。

classMyCanvasextendsCanvas{//加载顶部图片

MyCanvas(){setSize(438,45);

}

publicvoidpaint(Graphicsg){

g.drawImage(myimage,0,0,myimage.getWidth(this),myimage.getHeight(this),this);

15、类名:

MyWindowListener

自定义的类,实现对系统主窗口的一些基本操作的功能。

WindowListener接口。

classMyWindowListenerimplementsWindowListener{

//利用singleton(单态)模式获取唯一对象

privatestaticMyWindowListenermwl=newMyWindowListener();

privateMyWindowListener(){

publicstaticMyWindowListenergetInstance(){

returnmwl;

publicvoidwindowActivated(WindowEvente){

publicvoidwindowClosed(WindowEvente){

publicvoidwindowClosing(WindowEvente){

System.exit(0);

//关闭窗体,退出程序

publicvoidwindowDeactivated(WindowEvente){

publicvoidwindowDeiconified(WindowEvente){

publicvoidwindowIconified(WindowEvente){//最小化到托盘图标

e.getWindow().dispose();

DesktopTray.creatDesktopTray();

publicvoidwindowOpened(WindowEvente){

16、类名:

DesktopTray

自定义的类,实现将系统窗口进行最小化托盘或最大化的功能。

classDesktopTray{//实现托盘图标

publicstaticvoidcreatDesktopTray(){}

publicstaticvoiddisposeDesktopTray(){}

publicstaticvoidsendMail(Stringmail){}

publicstaticvoidcalculator(StringproName){}

publicstaticvoidcreatePopupMenu(){//托盘的弹出菜单}

系统测试分析

系统运行测试

系统设计完成之后,需要进一步对系统的运行情况进行测试,目的是检验程序代码的完整性和准确性,同时检验窗口是否出现异常情况。

在系统测试中,检验方法主要是运行系统,即分别利用软件的分割和合并功能对目标文件进行相关处理,然后检查处理结果是否正确。

本次测试选取的目标文件为Word文件,以按数目的方式对同一个文件进行分割和合并,测试结果如图2.6及图2.7A、图2.7B、图2.7C所示。

图2.6按数目分割文件测试结果

将第一个分割后的子文件放入指定文件夹中。

图2.7A合并文件第一步结果图

将第二个分割后的子文件放入同一个指定文件夹中。

图2.7B合并文件第二部结果图

将第三个分割后的子文件放入同一个指定文件夹中。

图2.7C合并文件第三步结果图

系统测试结果分析

经过测试,系统的各个部分的功能均能完整实现,测试结果完全正确。

因此,该系统软件可以用于实际应用当中。

第3章课程设计总结

我自己感觉此次课程设计做得挺成功的,通过这一次课程设计我学到了不少实际编程的知识。

最重要的是我在这一学期对《Java面向对象程序设计》这一教材学习得很努力,掌握了一定的java基础知识,使得此次课程设计进展相对顺利,基本遇到的问题都能自己独立解决了。

在课程设计开始的几天里,我主要搜取相关资料,在互联网上搜取了大量关于java课程设计的材料,然后从中选取了一份作为主要参考依据,进行此次的java课程设计。

设计过程中我主要完成了类图的设计以及java课程设计说明的编写。

在这课程设计期间我的学长帮助了我,有些东西是我们一起探讨,一起解决方法的。

当然在学习Java和设计程序的过程中还得到了刘维军老师的辛勤指导,为我解答了不少的疑问。

同时,在刘老师身上我们学到了很多实用的东西,在此表示衷心的感谢!

同时,还要感谢帮助过我的学长及其他同学!

此次课程设计使我学到了不少书本上没有的知识;

学到了很多java编程知识,并学会了简单的使用PowerDesigner来设计类图,由此我发现了不少的问题。

他使我对PowerDesigner软件有了一定的了解,并掌握了一些基础的功能使用方法。

经过这次的课程设计,尽管遇到了很多难题,但是让我更加受益的是在这次课程设计中得到的经验、心得和锻炼。

这让我发现编译程序的过程其实就是不断解决问题的过程,从中也感受到了编写软件的乐趣,一个人永远有学不完的知识,就算开发软件的各项知识都学会了,但在实际开发过程中仍然会遇到不少问题,这是就要做到以下这两点:

一个是“查”,另一个则是“问”。

通过仔细的查阅资料和询问老师以及同学,最终解决了不少的问题。

这也是使我认识到解决问题一方面依靠外界的帮助,更重要的是依靠自己的能力。

这次课程设计给我以前学过的知识做了一个总结,为我深入学习编程做了铺垫。

参考文献

[1]陈明.JAVA学教程.科技出版社,2002.

[2]飞思科技产品研发中心.JAVA应用开发.北京:

电子工业出版社.2003.5

[3]JAVA高手突破.北京:

清华大学出版社.2002.8

[4]乔林.JAVA应用技术.中国铁道出版社.2003.12

[5]张立科.实用JAVA应用学.北京:

人民邮电出版社.2002.9

[6]严蔚敏.JAVA第二版.北京:

清华大学出版社.2001.7

[7]王珍玲.实用JAVA工程教程.北京:

高等教育出版社.2004.6

[8]李维.面向对象开发实践之路.北京:

电子工业出版社.2004.4

[9]袁绍欣,赵祥模,葛玮等.Java面向对象程序设计.北京:

清华大学出版社.2007.8

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 考试认证 > 从业资格考试

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1