Java 面向对象程序设计 消息、继承与多态实验 课程设计研究报告

代码:Java计算机课程设计面向对象程序设计对战游戏SwingGUI界面-Java文档类资源-CSDN文库

 

一、课程设计内容

一个游戏中有多种角色(Character),例如:国王(King)、皇后(Queen)、骑士(Knight)、老怪(Troll)。

 角色之间可能要发生战斗(fight),每场战斗都是一个角色与另一角色之间的一对一战斗。每个角色都有自己的生命值(hitPoint)、魔法值(magicPoint)、攻击力值(damage)和防御力值(defense)。

每种角色都有一种武器进行攻击(fight);在程序运行中,可以动态修改角色的武器(setWeaponBehavior)。

每种角色都有一种魔法对自己或者其他角色施法(performMagic);可以动态改变拥有的魔法(setMagicBehavior)。

二、技术路线

1)首先设计和实现抽象类Characters,其中:

Characters中的display方式是抽象方法。publicvoidfight(Charactersc)完成本角色攻击角色c的操作。

2)设计和实现Character类的几个子类:King、Queen、Knight、Troll。3)设计接口WeaponBehavior和MagicBehavior。并编写以下类的代码:

a)接口WeaponBehavior的实现类:KnifeBehavior(用刀)、BowAndArrowBehavior(用弓箭)、AxeBehavior(用斧)、SwordBehavior(用剑);实现接口中的抽象方法,结合生命值(hitPoint)、攻击力值(damage)和防御力值(defense)计算。

b)接口MagicBehavior的实现类:HealBehavior(治疗)、InvisibleBehavior(隐身)。结合生命值(hitPoint)、魔法值(magicPoint)、攻击力值(damage)和防御力值(defense)计算。

三、设计与实现

使用NetBeans IDE,。角色的初始攻击力和魔法值都为0,装备不同的武器后获得不同的攻击力,魔法值由选择的魔法决定。每个角色拥有不同的生命值和防御力,攻击造成的伤害为进攻方的攻击力减去被攻击方的防御力。治疗法术作用是恢复等同于魔法值的攻击力,隐身法术则是保护自己不受到武器攻击的伤害。

【特色】增加了一种角色Thief(小偷)。

四、测试与结果

Java 面向对象程序设计 消息、继承与多态实验 课程设计研究报告_第1张图片

可以实现所有功能

五、感想和体会

通过这次实验,我掌握了Java面向对象程序设计的基本思想,理解并学会运用消息、继承、多态、接口、抽象类和抽象方法等概念和实现方式;掌握了Java程序设计中的基本语法和Java程序运行方法等,并对Netbeans的使用更加熟悉了。

六、要求的编译、运行、生成帮助文档的命令

1.编译

cd E:\demo\src

javac -d ../bin xx\demo\StrategyDemo.java -encoding utf-8

2.运行

java xx.demo.StrategyDemo -Dfile.encoding=utf-8

3.生成帮助文档

cd E:\demo\src

javadoc -d ../doc xx.behavior xx.character xx.demo -encoding utf-8

 

你可能感兴趣的:(Java,java,javadoc,NetBeans)