diff --git a/day11/src/com/inmind/class_member_var09/Demo07.java b/day11/src/com/inmind/class_member_var09/Demo07.java index f6ce951..5e8d230 100644 --- a/day11/src/com/inmind/class_member_var09/Demo07.java +++ b/day11/src/com/inmind/class_member_var09/Demo07.java @@ -21,6 +21,24 @@ public class Demo07 { //boss回击 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("游戏结束"); } diff --git a/day11/src/com/inmind/class_member_var09/Hero.java b/day11/src/com/inmind/class_member_var09/Hero.java index 261e99c..a17c0c0 100644 --- a/day11/src/com/inmind/class_member_var09/Hero.java +++ b/day11/src/com/inmind/class_member_var09/Hero.java @@ -9,6 +9,17 @@ public class Hero { //背包 private ArrayList 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() { } diff --git a/day11/src/com/inmind/class_member_var09/Skill.java b/day11/src/com/inmind/class_member_var09/Skill.java new file mode 100644 index 0000000..3a92f82 --- /dev/null +++ b/day11/src/com/inmind/class_member_var09/Skill.java @@ -0,0 +1,8 @@ +package com.inmind.class_member_var09; + +public interface Skill { + //施放技能的方法 + void outSkill(); + + String getName(); +}