当前位置: 首页 > news >正文

学习日记day8-面向对象实例

1.文字版格斗游戏

JavaBean类 package Game; import java.util.Random; public class Role { private String name; private int blood; public Role(){ } public Role(String name, int blood){ this.name = name; this.blood = blood; } public String getName(){ return name; } public void setName(String name){ this.name = name; } public int getBlood(){ return blood; } public void setBlood(int blood){ this.blood = blood; } //定义一个方法,用于攻击别人 public void attack(Role role){ //计算造成的伤害 Random r = new Random(); int hurt = r.nextInt(20) + 1; //修改挨揍的人血量 int remainBlood = role.getBlood() - hurt; remainBlood = remainBlood < 0 ? 0 : remainBlood; role.setBlood(remainBlood); System.out.println(this.getName() + "打了" + role.getName() + "一下, " + "造成了" + hurt +"点伤害, " + role.getName() + "还剩下" + remainBlood + "点血"); } }
测试类 package Game; public class GameTest { public static void main(String[] args) { //创建两个角色 Role r1 = new Role("C", 100); Role r2 = new Role("D", 100); //开始格斗 while(true){ //r1开始攻击r2 r1.attack(r2); if(r2.getBlood() == 0){ System.out.println(r1.getName()+" K.O了" + r2.getName()); break; } r2.attack(r1); if(r1.getBlood() == 0){ System.out.println(r2.getName()+" K.O了" + r1.getName()); break; } } } }

2.对象数组练习

1.

JavaBean类 package game2; public class Goods { private String id; private String name; private double price; private int count; public Goods(){ } public Goods(String id, String name, double price, int count){ this.id = id; this.name = name; this.price = price; this.count = count; } public void setId(String id){ this.id = id; } public String getId(){ return id; } public void setName(String name){ this.name = name; } public String getName(){ return name; } public void setPrice(double price){ this.price = price; } public double getPrice(){ return price; } public void setCount(int count){ this.count = count; } public int getCount(){ return count; } }
注:这里不能直接打印数组,打出来是数组元素的地址值,必须用定义的Goods重新定义数据接收数组内容

并不是二维数组,而是数组中存放的是地址,该地址存放具体的信息

测试类 package game2; public class GoodsTest { public static void main(String[] args) { //创建数组 Goods[] arr = new Goods[3]; //创建三个对象 Goods g1 = new Goods("001", "华为P40" , 5999.0, 100); Goods g2 = new Goods("002", "保温杯" , 227.0, 50); Goods g3 = new Goods("003", "枸杞" , 12.7, 70); //把商品添加到数组中 arr[0] = g1; arr[1] = g2; arr[2] = g3; //遍历 for (int i = 0; i < arr.length; i++) { Goods goods = arr[i]; // 注:这里不能直接打印数组,打出来是数组元素的地址值 // 必须用定义的Goods重新定义数据接收数组内容 System.out.println(goods.getId() + ", " + goods.getName() + ", " + goods.getPrice() + ", " + goods.getCount()); } } }

2.

http://www.gsyq.cn/news/99097.html

相关文章:

  • BLOG-2
  • 一位文艺室友的闲时赋
  • 1214总结
  • 基于SpringBoot+Vue的超市食品安全管理系统设计与实现
  • 基于Spring Boot+Vue的档案数字化项目管理系统
  • vue基于Spring Boot框架的企业办公OA系统设计与开发_g73fw47d_
  • vue基于Spring Boot框架的大学生英语四六级学习平台的设计与实现_6bh483sd
  • 重学计算机基础011:总线——计算机硬件的“高速公路网”,连接所有组件的核心枢纽
  • 内容智能研发五 技术架构
  • C++笔记:流式异步日志库
  • 完整教程:linux服务-rsync+inotify文件同步-ssh
  • Cesium快速入门到精通系列教程二十二:Cesium1.95中设置颜色的方式
  • C++学习之旅【实战全面解析C++类和对象】
  • 基于协同过滤算法的运动场馆服务平台设计与实现
  • 低代码 | 低代码库研究 + 拖拽
  • 005-AES:采招网
  • 基于Python与Django的白泽自动化运维系统设计与实现
  • 基于Python+django的智能停车系统的设计与实现(源码+lw+部署文档+讲解等)
  • 【设计模式|第五篇】代理模式:控制访问的智能中介
  • SPOOLing 是 Simultaneous Peripheral Operations On-Line 的缩写,中文为“外部设备同时联机操作”
  • 小红书内容运营工具怎么选?专业视角拆解优质工具核心标准
  • K8S资源无法删除处理方法
  • 音频二维码怎么做?音频二维码制作指南
  • DeepSeek-V3超长上下文处理终极指南:从原理到实战
  • 程序在输入或输出的边界附近更容易出现缺陷,例如数组越界、循环次数错误
  • Prompt工程能否代替模型训练?
  • 基于Python+Django的智能停车管理系统(源码+lw+部署文档+讲解等)
  • 基于python+django的在线考试系统(源码+lw+部署文档+讲解等)
  • C语言一维与二维数组名详解:从本质理解到高手应用
  • 路径覆盖是一种白盒测试方法,旨在设计足够的测试用例,使得程序中的每一条可能执行路径至少被执行一次