1.先创建一个奥特曼类


//设置奥特曼类
public class AutoMan {
    //设置属性
    private int blood;
    private String name;
    //构造方法,通过构造方法设置初始化值
    public AutoMan(int blood, String name) {
        this.blood = blood;
        this.name = name;
    }
    //设置get/set
    public int getBlood() {
        return blood;
    }
    public void setBlood(int blood) {
        this.blood = blood;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }

//攻击小怪兽方法,无返回值方法
    public void attack(Monster monster) {
        //随机数来随机攻击血量0~10
        int number = (int)(Math.random()*11);
        //攻击怪兽丢失血量
        monster.setBlood(monster.getBlood() - number);
        
        System.out.println("小怪兽受伤了,失去了" + number + "点血,还剩" + monster.getBlood());
    }

}

2.创建一个怪兽类


//设置怪兽类
public class Monster {
    //设置属性
    private int blood;
    private String name;
    //设置构造函数
    public Monster(int blood, String name) {
        this.blood = blood;
        this.name = name;
    }
    
    //设置get/set
    public int getBlood() {
        return blood;
    }
    public void setBlood(int blood) {
        this.blood = blood;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }

//攻击奥特曼方法,无返回值方法
    public void attack(AutoMan automan) {
        //随机数Math.random,随机数来随机攻击血量0~10
        int number = (int)(Math.random()*11);
        //攻击奥特曼丢失血量
        automan.setBlood(automan.getBlood() - number);
        
        System.out.println("奥特曼受伤了,失去了" + number + "点血,还剩" + automan.getBlood());
    }
}

创建一个PK方法


public class PK {
    //设置静态PK方法,通过输入对象进行PK
    public static void PK1V1(AutoMan automan,Monster monster) {
        //执行1V1,通过do while循环来pk
        do {
            //设置随机数来判断攻击方
            int random = (int)(Math.random()*11);
            //调用奥特曼攻击方法和怪兽攻击方法
            if(random>5) {
                automan.attack(monster);
            }else {
                monster.attack(automan);
            }
            //当双方都有血量的时候执行循环
        }while(automan.getBlood()>0 && monster.getBlood()>0);
        //其中一方没有血量了游戏结束,输出结果
        if(automan.getBlood()<=0) {
            System.out.println(automan.getName() + "死了" + monster.getName() + "赢了");
        }else {
            System.out.println(monster.getName() + "死了" + automan.getName() + "赢了");
        }
    }
}

通过main方法调用PK方法


public class Attack {
    //main方法
    public static void main(String[] args) {
        //new两个对象,初始化双方属性
        AutoMan automan = new AutoMan(200,"迪迦奥特曼");
        Monster monster = new Monster(200,"哥尔赞");
        //调用PK方法判断胜负
        PK.PK1V1(automan, monster);
    
    }
}

java实现奥特曼打小怪兽,用封装的思想相关推荐

  1. java学习之类与对象篇——奥特曼打小怪兽

    java学习之类与对象篇--奥特曼打小怪兽 初次接触Java,我们就被告知Java是一种面向对象的程序设计语言,那么什么是面向对象呢?什么又是对象呢?带着这些个疑问,我们开始了Java学习之旅. 1. ...

  2. java奥特曼对战小怪兽_“奥特曼攻打小怪兽”java打怪升级第一步

    练习:回合制对战游戏:奥特曼和小怪兽进行PK,直到一方的血量为0时结束战斗,输出谁胜利了! 不难看出场景中有两个对象:"奥特曼"这一对象抽象为"Ao"类: &q ...

  3. JAVA继承:奥特曼打小怪兽

    一.继承的基础知识: 1.类的继承的作用: 1)提高代码的重用性. 2)提高程序的扩展性. 简单来说,就是减少代码长度,减少工作量,工程量较小的时候,体现不出继承的优点,但是如果工程量很大的时候,比如 ...

  4. java面向对象之对象数组练习“奥特曼打小怪兽混战”

    import java.util.Arrays; import day10.homework.Aliens; /**  *   * @Description  *   * 随机奥特曼打小怪兽  *  ...

  5. java奥特曼对战小怪兽_JAVA程序设计(09)-----面对对象设计初级应用 奥特曼打小怪兽...

    1.一个奥特曼固定属性 4个小怪兽随机名字 随机属性 奥特曼有几率发动暴风雪技能 对所有小怪兽造成 50%~60%冰霜伤害 无视防御力 普通攻击伤害为 攻击力*80~120% - 对方防御力*60%~ ...

  6. java基础练习之奥特曼打小怪兽

    /******************外星人公共类******************/ public class Aliens {     // 外星人姓名     private String n ...

  7. Python——用面相对象写奥特曼大战小怪兽

    一,知识点 基本的面向对象知识 理解继承,多态,封装,不会的小伙可以看这篇超详细教程 了解基本的装饰器知识不会的小伙伴可以看这个讲解 ** 二,代码(奥特曼大战小怪兽) from abc import ...

  8. 简单的奥特曼打小怪兽

    奥特曼打小怪兽 需求 创建两个类,一个奥特曼类,一个怪兽类, 分别有各自对应的属性和方法 编写一个测试类,实现奥特曼与怪兽的创建,并让他们两个互相攻击,最后给出胜利结果 说明 奥特曼 属性: 血量 攻 ...

  9. Scala - 小项目 - 奥特曼打小怪兽

    一.项目描述 奥特曼 1个名字血量普通 必杀 一次只能打1只魔法 所有奥特曼的攻击 10%必杀 30%魔法 60%普攻小怪兽 4只名字血量普通 回合制游戏示例输出: ======== 第1回合 === ...

最新文章

  1. html中利用table进行布局
  2. python vars 的用法
  3. java 空语句_Java空语句怎么写才正确?这样的Java基础知识才是你需要的
  4. Python os.path() 模块 详解 附算例
  5. mysql 文件放网络盘_MySQL InnoDB的磁盘文件及落盘机制
  6. 吴恩达斯坦福大学机器学习 CS229 课程学习笔记(一)
  7. Collections.synchronizedList使用
  8. Linux——umask使用详解
  9. python标准输入如何一行一行读_Python 3提供了( )函数从标准输入(如键盘)读入一行文本。_学小易找答案...
  10. python实现简单的socket通信
  11. 数据结构 实验1——一元多项式的表示与相加
  12. “3W1H法”浅析三层架构
  13. 从单体式架构迁移到微服务架构
  14. python struct pack unpack
  15. 最终实现4象棋主程序的完善,主要还是针对之前的ChessMainframe类进行完善.
  16. 2021全球程序员收入报告出炉
  17. SQL 数字和字符串互转
  18. 苹果M1芯片MacBook/iMac/Mac mini降级或者重装系统教程
  19. Python实现地图四色原理的遗传算法(GA)着色实现
  20. curl 实现qq挂号登录

热门文章

  1. 久保由利香杂志翻译校队稿
  2. SIM800C通讯模块调试(一)
  3. 容错学习问题(LWE)
  4. 干货!学会这些动漫绘画素材,小白也能学会动漫绘画,简单易学!
  5. 算法竞赛进阶指南——兔子与兔子【哈希】
  6. 一名普通游戏开发者的年终总结
  7. 八大免费SSL证书-给你的网站免费添加Https安全加密
  8. 河南企服网:语音自动外呼机器人效果好吗?
  9. 矩阵乘法 递归 优化 c语言,矩阵乘法优化递归式
  10. 幽默人生 - eleventh (11th)