day11-类作为成员变量类型(hero,weapon,armor)

This commit is contained in:
2026-05-30 14:26:35 +08:00
parent 3956c0173d
commit 21914a5025
5 changed files with 152 additions and 2 deletions

View File

@@ -0,0 +1,67 @@
package com.inmind.class_member_var09;
import java.util.ArrayList;
public class Hero {
private String name;
private Weapon weapon;
private Armor armor;
//背包
private ArrayList<Weapon> weapons;
public Hero() {
}
public Hero(String name, Armor armor, Weapon weapon) {
this.name = name;
this.armor = armor;
this.weapon = weapon;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Weapon getWeapon() {
return weapon;
}
public void setWeapon(Weapon weapon) {
this.weapon = weapon;
System.out.println("英雄"+this.name+"装备了"+this.weapon.getName());
}
public Armor getArmor() {
return armor;
}
public void setArmor(Armor armor) {
this.armor = armor;
System.out.println("英雄"+this.name+"装备了"+this.armor.getName());
}
public ArrayList<Weapon> getWeapons() {
return weapons;
}
public void setWeapons(ArrayList<Weapon> weapons) {
this.weapons = weapons;
}
//行为
//攻击
public void attack(){
System.out.println(this.name+"使用了-"+this.weapon.getName()+"-武器,输出了"+this.weapon.getHurt()+"伤害");
}
//防御
public void protect(){
System.out.println(this.name+"穿戴了-"+this.armor.getName()+"-防具,抵消了"+this.armor.getProtectNum()+"伤害");
}
}