这是我为了好记而用了中文

说明:大家做的时候要用英文建立包和类

一、怪蜀黍的类

package 奥特曼打怪蜀黍;public class 怪蜀黍 {private String name;private int hp;private int mp;/*** @param name*/public 怪蜀黍(String name) {super();this.name = name;this.hp = 3400;this.mp = 100;}public void attack(奥特曼 a){int hurt = (int) (Math.random() * 60 + 25);a.setHp(a.getHp() - hurt);
}public int getHp() {return hp;
}public void setHp(int hp) {this.hp = hp> 0 ? hp : 0;
}public int getMp() {return mp;
}public void setMp(int mp) {this.mp = mp > 0 ? mp : 0;
}public void magicAttack(奥特曼 a){mp -= 40;if (mp >= 0) {int magicHurt = (int) (Math.random() * 300 +30);a.setHp(a.getHp() - magicHurt);     }else {int hurt = (int) (Math.random() * 60 + 25);a.setHp(a.getHp() - hurt);}
}
public String toString() {return "怪蜀黍" + name + "生命值" + hp;}
}

二、奥特曼的类

package 奥特曼打怪蜀黍;public class 奥特曼 {private String name;private int hp;private int mp;     /**    构造器* @param name*/public 奥特曼(String name) {this.name = name;this.hp = 3500;this.mp = 200;}
/*** 攻击* @param g 怪蜀黍*/
public void attack(怪蜀黍 g){int hurt = (int) (Math.random() * 120 +5);g.setHp(g.getHp() - hurt);}public int getHp() {return hp;
}public void setHp(int hp) {this.hp = hp > 0 ? hp : 0;
}public int getMp() {return mp;
}public void setMp(int mp) {this.mp = mp;
}public void magicAttack(怪蜀黍 g){int magicHurt = (int) (Math.random() * 80 +10);g.setHp(g.getHp() - magicHurt);
}public String toString() {return "奥特曼" + name + "生命值" + hp;}
}

三、怪蜀黍和奥特曼相互打击

package 奥特曼打怪蜀黍;public class 奥特曼PK怪蜀黍 {public static void main(String[] args) {奥特曼 a = new 奥特曼("坤坤");怪蜀黍 g = new 怪蜀黍("琪琪");int round = 1;do {System.out.println("第====="+ round++ + "=====回合PK开始!");             if (g.getHp() > 0) {double rate1 = Math.random();if (rate1 > 0.3) {System.out.println("怪蜀黍普通攻击了奥特曼。。");g.attack(a);}else {System.out.println("怪蜀黍使用了法术攻击奥特曼。。");g.magicAttack(a);} }System.out.println(a);if (a.getHp() > 0) {double rate = Math.random();if (rate > 0.3) {System.out.println("奥特曼使用拳头打怪蜀黍!!");a.attack(g);}else {System.out.println("奥特曼使用了强力魔法攻击!!");a.magicAttack(g);}}System.out.println(g);  } while (a.getHp() > 0 && g.getHp() > 0);if (a.getHp() > 0) {System.out.println("奥特曼胜利!!");}else {System.out.println("怪蜀黍胜利!!");}}}

面向对象:怪蜀黍PK奥特曼相关推荐

  1. C#面向对象案例之奥特曼打小怪兽_01

    1案例需求: 2.具体实现代码: class Monster {public string name;public int hp;public int atk;public Monster(strin ...

  2. C#面向对象案例之奥特曼打小怪兽_02(奥特曼可挂载装备)

    class Monster{public string name;public int hp;public int atk;public Monster(string name, int atk, i ...

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

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

  4. 数据分析软件python 对电脑的要求-数据分析5大软件PK,你最爱哪个?

    原标题:数据分析5大软件PK,你最爱哪个? 是新朋友吗?记得先点 蓝字关注我哦- 今日课程菜单 Java全栈开发 | Web前端+H5 大数据开发 | 数据分析 人工智能+Python | 人工智能+ ...

  5. 【原创】面向对象作业:选课系统中用pickle储存多个对象间组合引用关系的那些坑...

    转载请注明出处:https://www.cnblogs.com/oceanicstar/p/9030121.html 想直接看结论先提前列出: 1.存储一个对象,文件不是真的给你存储的了对象这种东西, ...

  6. python 全栈开发,Day116(可迭代对象,type创建动态类,偏函数,面向对象的封装,获取外键数据,组合搜索,领域驱动设计(DDD))...

    昨日内容回顾 1. 三个类 ChangeList,封装列表页面需要的所有数据.StarkConfig,生成URL和视图对应关系 + 默认配置 AdminSite,用于保存 数据库类 和 处理该类的对象 ...

  7. python 鱼骨图_面向对象编程,鱼骨图分析法

    06.05 自我总结 一.面向对象编程 ​面向过程编程,核心是编程二字,过程指的是解决问题的步骤,即先干什么.后干什么.再干什么.然后干什么-- 与工厂的工艺流程差不多,前后都有影响 优点:复杂的问题 ...

  8. python进阶课程目标 学习内容_Python学习教程(Python学习路线):第九天-面向对象进阶...

    面向对象进阶 在前面的章节我们已经了解了面向对象的入门知识,知道了如何定义类,如何创建对象以及如何给对象发消息.为了能够更好的使用面向对象编程思想进行程序开发,我们还需要对Python中的面向对象编程 ...

  9. 架构师之路---面向过程和面向对象 王泽宾

    1.引言    机算机科学是一门应用科学,它的知识体系是典型的倒三角结构,所用的基础知识并不多,只是随着应用领域和方向的不同,产生了很多的分支,所以说编程并不是一件很困难的事情,一个高中生经过特定的训 ...

最新文章

  1. python numpy 子数组_Python利用Numpy数组进行数据处理(一)
  2. Java常用API(六)Date 日期类介绍及使用
  3. ghost linux 全盘拷贝,如何用ghost实现小硬盘对大硬盘的全盘拷贝?
  4. 【Unity开源项目精选】AssetStudio:提取Unity游戏的资源
  5. 《Queue,Stack,SortedList》---集合
  6. OSX下解决PIL的IOError: decoder jpeg not available 问题
  7. 【计算机视觉】人脸识别总结
  8. python 接口自动化 recharge_python接口自动化测试
  9. 【电力负荷预测】基于matlab粒子群算法优化支持向量机预测电力负荷【含Matlab源码 1225期】
  10. 对于区块链在现实落地的一些技术业务关注点
  11. ECshop仿顺丰优选综合购物商城平台源码旗舰版+团购+触屏版+微信支付
  12. HTML常用排版标签
  13. raw格式转换成qcow2格式
  14. 盘点15个搞笑的程序员段子
  15. 微信影视站域名防封、微信影视站公众号域名防封
  16. 为ipad搭建code-server服务
  17. html图片自带闪光效果,CSS实现的一闪而过的图片闪光效果
  18. 【正点原子MP157连载】第四十章 Linux I2C驱动实验-摘自【正点原子】STM32MP1嵌入式Linux驱动开发指南V1.7
  19. WPF写入剪切板时报异常
  20. ffmpeg在windows的安装、合并、切片、.m4s、.m3u8处理

热门文章

  1. 团队成长的一些方式方法
  2. 《Openwrt开发》AR9331路由器实现视频监控
  3. mpv 终极教程【安装、快捷键、 播放列表jonniek/mpv-playlistmanager】
  4. 分享一下自己的用的几个网站 嘿嘿嘿
  5. 世界上各个国家和首都
  6. ZZ教你卸载 Office 正版增值计划通知 (KB949810)-CHS
  7. python之路——进程
  8. [vuex] unknown mutation type: XXX/XXX 报错解决方法
  9. 无法将类 XXX中的构造器 XXX应用到给定类型
  10. Elasticsearch: Query string与Simple query string