day11-接口作为成员变量类型(skill)

This commit is contained in:
2026-05-30 14:37:27 +08:00
parent 21914a5025
commit c4394dc6b5
3 changed files with 37 additions and 0 deletions

View File

@@ -21,6 +21,24 @@ public class Demo07 {
//boss回击 //boss回击
hero.protect(); hero.protect();
System.out.println("BOSS掉落了一本技能书");
Skill skill = new Skill() {
@Override
public void outSkill() {
System.out.println("施放野火燎原技能团队伤害9999");
}
@Override
public String getName() {
return "野火燎原";
}
};
//装备技能
hero.setSkill(skill);
//英雄获取自己的技能,并施放
hero.getSkill().outSkill();
System.out.println("游戏结束"); System.out.println("游戏结束");
} }

View File

@@ -9,6 +9,17 @@ public class Hero {
//背包 //背包
private ArrayList<Weapon> weapons; private ArrayList<Weapon> weapons;
//拥有技能
private Skill skill;
public Skill getSkill() {
return skill;
}
public void setSkill(Skill skill) {
this.skill = skill;
System.out.println("英雄"+this.name+"装备了技能-"+this.skill.getName());
}
public Hero() { public Hero() {
} }

View File

@@ -0,0 +1,8 @@
package com.inmind.class_member_var09;
public interface Skill {
//施放技能的方法
void outSkill();
String getName();
}