人狗大战JAVA代码分享:附带详细注释和讲解!

吉云

好家伙,今天给大家伙儿唠唠我写的这个“人狗大战”的JAVA代码,纯属瞎玩儿哈,各位大佬轻喷。

事情是这么开始的,那天在家闲的蛋疼,突然想到以前玩儿过的一个小游戏,就是人跟狗互殴,觉得挺有意思的,就寻思着用JAVA给它实现出来。说干就干,我立马打开我的 IDEA,新建一个JAVA项目,名字就叫 "PersonDogFight"。

第一步,先定义两个类,人(Person)和狗(Dog)。 这俩类都得有属性,比如血量(HP)、攻击力(Attack),还得有方法,比如攻击(attack)、被攻击(beAttacked)。代码大概是这么写的:

人狗大战JAVA代码分享:附带详细注释和讲解!

  • Person类:
    
    

    public class Person {

    private int hp;

    private int attack;

    人狗大战JAVA代码分享:附带详细注释和讲解!

    public Person(int hp, int attack) {

    * = hp;

    * = attack;

    public void attack(Dog dog) {

    *("人类攻击!");

    人狗大战JAVA代码分享:附带详细注释和讲解!

    public void beAttacked(int attack) {

    * -= attack;

    *("人类受到攻击,血量减少" + attack + ",当前血量:" + *);

    人狗大战JAVA代码分享:附带详细注释和讲解!

    public int getHp() {

    return hp;

  • 人狗大战JAVA代码分享:附带详细注释和讲解!

  • Dog类:
    
    

    public class Dog {

    private int hp;

    private int attack;

    public Dog(int hp, int attack) {

    人狗大战JAVA代码分享:附带详细注释和讲解!

    * = hp;

    * = attack;

    public void attack(Person person) {

    *("狗狗攻击!");

    人狗大战JAVA代码分享:附带详细注释和讲解!

    public void beAttacked(int attack) {

    * -= attack;

    *("狗狗受到攻击,血量减少" + attack + ",当前血量:" + *);

    public int getHp() {

    人狗大战JAVA代码分享:附带详细注释和讲解!

    return hp;

人狗大战JAVA代码分享:附带详细注释和讲解!

第二步,写个Main方法,也就是游戏的入口。 在这里面创建人跟狗的实例,然后开始循环对战,直到一方血量归零。


public class Main {

public static void main(String[] args) {

Person person = new Person(100, 10);

Dog dog = new Dog(80, 15);

人狗大战JAVA代码分享:附带详细注释和讲解!

while (*() > 0 && *() > 0) {

*(dog);

if (*() <= 0) {

*("狗狗被打败!人类胜利!");

break;

人狗大战JAVA代码分享:附带详细注释和讲解!

*(person);

if (*() <= 0) {

*("人类被打败!狗狗胜利!");

break;

人狗大战JAVA代码分享:附带详细注释和讲解!

第三步,跑起来看看效果。 运行Main方法,就能看到人和狗你一下我一下的互殴,血量不断减少,一方倒下。 这时候运行,你会发现就是很简单的文字输出,没有任何花里胡哨的东西。

遇到的问题及解决

写这个代码的时候,也遇到一些小问题。 比如说:

人狗大战JAVA代码分享:附带详细注释和讲解!

  • 一开始忘判断血量是否小于等于0。 导致一方血量变成负数,游戏还在继续。 后来加个判断,血量小于等于0就结束循环。
  • 攻击力数值设置的不合理。 导致一方很快就被秒杀,没啥游戏体验。 后来调整下攻击力数值,让战斗过程更持久一些。

后续改进方向

这个代码现在还很简陋,有很多地方可以改进。 比如说:

人狗大战JAVA代码分享:附带详细注释和讲解!

  • 可以加入更多的属性和技能。 比如人类可以有武器,狗可以有特殊技能啥的。
  • 可以做个简单的GUI界面。 用Swing或者JavaFX把游戏画面做出来,让游戏体验更
  • 可以加入AI。 让狗可以自动攻击,而不是手动控制。

这回“人狗大战”的代码实践,让我对JAVA面向对象编程有更深的理解。 虽然代码很糙,但是也算是一个小小的进步。 以后有时间,我再把这个游戏完善一下,争取做成一个更好玩儿的版本! 感谢各位观看!

人狗大战JAVA代码分享:附带详细注释和讲解!

免责声明:由于无法甄别是否为投稿用户创作以及文章的准确性,本站尊重并保护知识产权,根据《信息网络传播权保护条例》,如我们转载的作品侵犯了您的权利,请您通知我们,请将本侵权页面网址发送邮件到qingge@88.com,深感抱歉,我们会做删除处理。

目录[+]