北京专业做网站公司哪家好网站调用字体库
2026/4/18 5:31:08 网站建设 项目流程
北京专业做网站公司哪家好,网站调用字体库,apache搭建wordpress如何,网络管理员正在设计新的无布局目录 前言 文字版格斗游戏实现对象数组的应用 —— 商品信息管理 前言 前文已系统讲解 Java 面向对象编程的核心特性之一#xff1a;封装。本文将通过两个小型实战案例#xff0c;帮助读者深化对面向对象编程思想的理解#xff0c;掌握类的定义、对象实例化及方法调用的…目录前言文字版格斗游戏实现对象数组的应用 —— 商品信息管理前言前文已系统讲解 Java 面向对象编程的核心特性之一封装。本文将通过两个小型实战案例帮助读者深化对面向对象编程思想的理解掌握类的定义、对象实例化及方法调用的核心流程。1. 文字版格斗游戏实现格斗游戏中每个角色的姓名、血量等核心属性具有唯一性需在创建角色对象实例化时完成初始化。本案例核心考察类的定义能力需构建 Role 类包含姓名、血量、攻击力等成员变量并定义 attack 方法实现角色的攻击行为。定义 Role 类java运行package allgame; import java.util.Random; /** * 格斗游戏角色类 * 封装角色姓名、血量、攻击力属性提供攻击行为方法 */ public class Role { // 私有成员变量通过get/set方法访问 private String name; // 角色姓名 private int blood; // 角色血量 private int hurt; // 角色攻击力 // 获取角色姓名 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; } /** * 构造方法初始化角色姓名和初始血量攻击力随机生成0-19 * param name 角色姓名 * param blood 初始血量 */ public Role(String name, int blood) { this.name name; this.blood blood; Random random new Random(); this.hurt random.nextInt(20); } /** * 攻击方法实现对目标角色的攻击行为扣除对应血量 * param role 被攻击的目标角色对象 */ public void attack(Role role) { // 输出攻击信息 System.out.println(this.name 使用升龙拳对 role.name 造成了 this.hurt 点伤害); // 扣除目标角色血量 role.blood role.blood - this.hurt; // 防止血量出现负值重置为0 if (role.blood 0) { role.blood 0; } // 输出目标角色剩余血量 System.out.println(此时 role.name 的血量剩余 role.blood 点); } }测试类实现角色创建与攻击逻辑java运行package allgame; /** * 格斗游戏测试类 * 实例化角色对象模拟角色互攻直至一方血量为0 */ public class gamatest { public static void main(String[] args) { // 实例化两个角色对象初始化姓名和初始血量 Role r1 new Role(张三, 100); Role r2 new Role(李四, 120); // 循环实现角色互攻直至一方血量为0 while (true) { // 张三攻击李四 r1.attack(r2); if (r2.getBlood() 0) { // 李四血量大于0时反击张三 r2.attack(r1); if (r1.getBlood() 0) { System.out.println(r1.getName() 已阵亡游戏结束); break; } } else { System.out.println(r2.getName() 已阵亡游戏结束); break; } } } }运行结果示例注因攻击力随机生成结果会略有差异plaintext张三使用升龙拳对李四造成了15点伤害 此时李四的血量剩余105点 李四使用升龙拳对张三造成了8点伤害 此时张三的血量剩余92点 ...... 张三使用升龙拳对李四造成了12点伤害 此时李四的血量剩余0点 李四已阵亡游戏结束2. 对象数组的应用 —— 商品信息管理本案例要求定义数组存储三个商品对象商品需封装编号、名称、价格、库存等属性核心实现商品对象的创建、数组存储及遍历验证。定义商品类shangpinjava运行package allgame; /** * 商品类 * 封装商品编号、名称、价格、库存属性提供get/set方法 */ public class shangpin { private String id; // 商品编号 private String name; // 商品名称 private double price; // 商品价格 private int count; // 商品库存 /** * 构造方法初始化商品全部属性 * param id 商品编号 * param name 商品名称 * param price 商品价格 * param count 商品库存 */ public shangpin(String id, String name, double price, int count) { this.id id; this.name name; this.price price; this.count count; } // 获取商品编号 public String getId() { return id; } // 设置商品编号 public void setId(String id) { this.id id; } // 获取商品名称 public String getName() { return name; } // 设置商品名称 public void setName(String name) { this.name name; } // 获取商品价格 public double getPrice() { return price; } // 设置商品价格 public void setPrice(double price) { this.price price; } // 获取商品库存 public int getCount() { return count; } // 设置商品库存 public void setCount(int count) { this.count count; } }主类实现商品对象数组的创建与遍历java运行package allgame; /** * 商品信息测试类 * 实现商品对象数组的创建、赋值与遍历验证 */ public class shangpintest { public static void main(String[] args) { // 1. 创建长度为3的商品对象数组 shangpin[] arr new shangpin[3]; // 2. 实例化三个商品对象初始化属性 shangpin t1 new shangpin(1, 梳子, 4.55, 10); shangpin t2 new shangpin(2, 塑料梳子, 5.55, 10); shangpin t3 new shangpin(3, 木头梳子, 6.55, 10); // 3. 将商品对象存入数组 arr[0] t1; arr[1] t2; arr[2] t3; // 4. 遍历数组验证商品信息 for (int i 0; i arr.length; i) { shangpin sp arr[i]; System.out.println(id: sp.getId() name: sp.getName() price: sp.getPrice() count: sp.getCount()); } } }运行结果plaintextid:1 name:梳子 price:4.55 count:10 id:2 name:塑料梳子 price:5.55 count:10 id:3 name:木头梳子 price:6.55 count:10总结类是 Java 面向对象编程的核心载体其本质是对现实事物共同属性和行为的抽象封装。通过类的定义可快速构建具有统一特征的对象模板同时通过方法限定对象的行为边界。掌握 Java 编程的核心需熟练掌握类的抽象与创建能力 —— 能够从业务场景中提取事物的核心属性与行为定义出结构合理、封装完善的类这也是后续学习继承、多态等高级特性的基础。如果本文内容对您的学习有帮助欢迎点赞、评论、收藏。创作不易您的支持是我持续输出优质内容的动力

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询