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

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6

代码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面向对象程序设计的基本思想理解并学会运用消息、继承、多态、接口、抽象类和抽象方法等概念和实现方式掌握了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

 

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6
标签: Java