Java程序设计实训报告Word格式.docx
- 文档编号:18730528
- 上传时间:2022-12-31
- 格式:DOCX
- 页数:9
- 大小:82.97KB
Java程序设计实训报告Word格式.docx
《Java程序设计实训报告Word格式.docx》由会员分享,可在线阅读,更多相关《Java程序设计实训报告Word格式.docx(9页珍藏版)》请在冰豆网上搜索。
Java自面世后就非常流行,发展迅速,对C++语言形成了有力冲击。
Java技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于个人PC、数据中心、游戏控制台、科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。
在全球云计算和移动互联网的产业环境下,Java更具备了显著优势和广阔前景。
本次实训是配合Java程序设计课程,帮助我们深入学习掌握Java语言,熟练运用这个工具来编写的。
通过课程设计各个项目的综合训练,不仅培养学生实际分析问题、编程和动手能力,而且还提高了学生的综合素质。
如今,我们所面临的问题有:
不能全面系统的、深入的掌握某种技术,也就是会的挺多,但都是皮毛,不能满足就业的需要,没有任何实际的开发经验,完全是想象中学习,考试还行,一到实际开发和应用就歇菜了。
解决的方法就是通过实训和练习,对所学知识进行深化,然后通过项目来获取实际开发的经验,从而弥补这些不足。
我们应该明白软件是做出来的,而不是听出来或者看出来的,企业需要能实际开发的人员,而不是只听过、看过但不能做的人。
所以Java非常强调:
项目一定要让学生动手写出来。
希望同学们在老师的带领下,能够将理论与实践联系起来,把我们课本上所学到的知识运用到实践中,在实践中检验真知。
2014年6月10日
目录
一.实训目的-1-
二.功能分析-1-
三.系统设计-2-
四.测试数据及运行结果-2-
五.主要源程序-4-
六.实训总结与心得体会-6-
一.实训目的
1.掌握Java语言的面向对象特征,包括Java语言中类、对象、继承、多态、接口和内部类,图形绘制等重要概念及应用实践。
2.掌握Java语言编程基础,包括数据类型、变量、运算符、字符串、数组、控制结构、访问权限修饰符,基本数据类型的转换,类的定义,对象的创建,通过类的对象调用类中的方法等内容。
3.掌握如何使用Java语言编写图形用户界面,利用Java丰富的图形组件创建交互性较好的用户界面。
掌握面对不同的事件处理进行不同事务处理,及每种事务处理的过程。
4.掌握如何使用不同的布局管理器,方便地设计出各种控件组织方式的界面。
掌握如何创建图形的界面,如何进行图形的绘制,怎样对图像进行处理。
5.进一步了解java开发的相关知识,掌握java开发的基本技术,丰富java开发的实战经验。
学习有用的相关技术,提高自己的学习效率和工作效率。
6.巩固Java课程所学基本知识,提高分析、判断和处理实际问题的能力,锻炼自己的实际动手能力,增强自己的团队协作意识,了解软件开发的思考角度和主要流程。
为毕业之后能够更快地进入工作状态并且能够更好的工作,打好一定的基础。
7.经过这个学期的学习后,能不能把学习的知识综合串联起来,java的实训项目的制作可以有效的检验这一点。
进行综合项目实训可以练习java软件开发的环境和配置,能够把java的面向对象技术、数据结构、图形界面、小应用程序等知识运用到实践中去,从而更好地理解java的各项知识,达到能够应用自如的地步。
进行实训的同时还需要查阅大量的文档,可以锻炼同学的自学能力。
二.功能分析
该黑白棋游戏主要可以实现黑白棋的对弈,要求有黑白两色棋子,保存所有已下的棋子,包括在棋盘上的所有棋子和被踢掉的棋子,若落子没有造成踢子,包括所有被这个棋子踢掉的棋子及这个棋子本身。
如果踢子,则保存所有被踢的棋子,在游戏的过程中也可以显示对战双方的当前的棋子个数,提醒对战双方的时限。
同时,该游戏还具有悔棋的功能。
三.系统设计
1.棋盘界面设计:
基于Panel类定义一个面板子类,在其中利用Graphics类的drawLine()方法绘制棋盘格线,利用fillOval()方法绘制棋盘四角的星位。
为面板创建监听器,为一个按钮注册ActionEvent事件监听器,实现单击鼠标布子、单机一个重新开局等操作。
2.棋盘功能设计:
控制面板类,包含标签、手数、悔棋按钮、重新开始按钮。
3.棋盘界面的实现方法:
通过Chesspoint类获得实际棋子的位置。
3.棋盘功能的实现方法:
利用JFrame将棋子显示出来,Chess对围棋界面外观进行初始化之后即可创建围棋对象。
四.测试数据及运行结果
1.围棋图形用户界面,如图5.1所示:
图5.1用户界面
2.黑白棋对弈,如图5.2所示:
a.界面左边的对话框提示轮的白子或黑子:
b.界面左边的对话框提示下棋进展:
c.界面左边的对话框提示“重新开始”功能:
d.界面左边的对话框提示“悔棋”功能:
图5.2运行界面
e.界面左边的对话框提示可选择棋盘大小功能,如图5.3所示:
图5.3棋盘大小选择界面
五.主要源程序
1.Chess类是此程序的主类之一,用来初始化棋盘的外观:
importjava.awt.*;
importjavax.swing.JFrame;
publicclassChessextendsJFrame{
Chessboardqipan=newChessboard();
;
//初始化外观
publicChess(){
this.setTitle("
围棋程序"
);
this.setLayout(newBorderLayout());
this.setSize(qipan.getSize());
this.add(qipan,"
Center"
this.setResizable(false);
this.setSize(550,490);
this.setVisible(true);
}
//得到宽数值
publicintgetWidth(){
returnqipan.getWidth();
publicintgetHeight(){
returnqipan.getHeight();
publicstaticvoidmain(String[]args){
//开始下棋程序
ChessIgo=newChess();
}
2.Chessboard类用来定义围棋程序所需的变量,围棋程序所要完成的方法,如绘制棋盘外观,画出棋盘格子,更新棋盘,重新开始游戏,悔棋。
publicclassChessboardextendsJPanel{//默认的棋盘方格长度及数目
publicstaticfinalint_gridLen=22,_gridNum=19;
/**利用Vector保存所有已下的棋子,包括在棋盘上的所有棋子和被踢掉的,若某一次
*落子没有造成踢子,包括所有被这个棋子提掉的棋子及这个棋子本身,Vector最后*/
privateVectorchessman;
privateintalreadyNum;
//已下数目
privateintcurrentTurn;
//轮到谁下
privateintgridNum,gridLen;
//方格长度及数目
privateintchessmanLength;
//棋子的直径
privateChesspoint[][]map;
//在棋盘上的所有棋子
privateImageoffscreen;
privateGraphicsoffg;
privateintsize;
//棋盘的宽度及高度
privateinttop=20,left=20;
//棋盘左边及上边的边距
privatePointmouseLoc;
//鼠标的位置,即map数组中的下标
privateControlPanelcontrolPanel;
//控制面板
//获得控制板的距离
publicintgetWidth(){
returnsize+controlPanel.getWidth()+35;
publicintgetHeight(){
returnsize;
//绘制棋盘外观
publicChessboard(){…}
publicvoidaddNotify(){
super.addNotify();
offscreen=createImage(size,size);
offg=offscreen.getGraphics();
}
……
3.Chesspoint类用来通过x和y取得黑白棋子的位置:
publicclassChesspoint
{
publicstaticintblack=0,white=1;
intx,y;
intcolor;
publicChesspoint(inti,intj,intc)
{
x=i;
y=j;
color=c;
publicStringtoString()
{
Stringc=(color==black?
"
black"
:
white"
return"
["
+x+"
"
+y+"
]:
+c;
六.实训总结与心得体会
通过这次的实训,我学到了很多:
首先,对JAVA识比以前有了更深的了解。
在这之前由于种种原因我JAVA学的很不太好。
但经过这次的实训,我对JAVA的理解,虽然还有很多都不懂,但我会在今后的实训和学习中加以学习了解,力求弄懂,增强自己对JAVA的理解。
其次,在这次的实训中我的动手操作能力有了一点的提高,刚开始的时候JDK的配置,JAVA开发工具的不熟悉,所以开始的时候进程很慢,但付出定有回报,成功的配置了JDK,熟悉了JAVA开发工具,总的说来,自己还是有一定的收获的。
因为自己的动手操纵能力得到了提高。
最后是团队协作。
在整个题目完成过程中团队协作有着不可替代的作用。
从我刚拿到题目时,我进行了分析,并做出了合理计划。
当我遇到问题的时候,我与同学们相互沟通,互相学习,效率提升了很多。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Java 程序设计 报告