news 2026/4/23 14:59:34

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

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
学习日记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.

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/23 12:47:51

vue基于Spring Boot框架的企业办公OA系统设计与开发_g73fw47d_

目录具体实现截图项目介绍论文大纲核心代码部分展示项目运行指导结论源码获取详细视频演示 &#xff1a;文章底部获取博主联系方式&#xff01;同行可合作具体实现截图 本系统&#xff08;程序源码数据库调试部署讲解&#xff09;同时还支持java、ThinkPHP、Node.js、Spring B…

作者头像 李华
网站建设 2026/4/22 22:26:48

vue基于Spring Boot框架的在线支付账单管理系统的设计与实现_9o4i9b4z_

目录具体实现截图项目介绍论文大纲核心代码部分展示项目运行指导结论源码获取详细视频演示 &#xff1a;文章底部获取博主联系方式&#xff01;同行可合作具体实现截图 本系统&#xff08;程序源码数据库调试部署讲解&#xff09;同时还支持java、ThinkPHP、Node.js、Spring B…

作者头像 李华
网站建设 2026/4/23 12:47:11

GNSS位移监测一体机与北斗形变监测系统的深度融合应用

本文将深入探讨GNSS位移监测一体机和北斗形变监测系统之间的融合应用&#xff0c;尤其是在基础设施安全监测中的重要性。文章将分析单北斗变形监测系统在桥梁和地质灾害监测中的实际应用&#xff0c;以及其安装、维护等关键步骤。栏目中还会关注各种传感器在实时数据采集过程中…

作者头像 李华
网站建设 2026/4/17 7:28:12

基于协同过滤算法的运动场馆服务平台设计与实现

在运动行业蓬勃发展以及数字化转型加速的背景下&#xff0c;运动场馆服务的高效管理与个性化体验需求日益凸显。传统的运动场馆管理方式效率低下&#xff0c;难以满足用户多样化需求&#xff0c;而新兴的数字化平台能够整合资源&#xff0c;提升服务质量与运营效率。因此&#…

作者头像 李华
网站建设 2026/4/23 13:30:26

小红书内容运营工具怎么选?专业视角拆解优质工具核心标准

在小红书成为品牌 “种草主阵地” 的当下&#xff0c;内容运营的效率与质量直接决定品牌曝光与转化效果。但多数品牌面临 “优质内容产出慢、关键词适配差、数据优化无依据” 等痛点&#xff0c;单纯依赖人工运营已难以应对平台高频更新与用户精细化需求。而一款好用的小红书内…

作者头像 李华