JAVA——张蕾

 

174944_lJrT_3686592.png

代码如下:

Role类:

package org.jsoft.lianxi;

public abstract class Role {
        private String name;

        public String getName() {
            return name;
        }

        public void setName(String name) {
            this.name = name;
        }
        public abstract int attack();//抽象一个方法,在父类中重写进行返回值
        public abstract String attack1();

}

Magicer类:

package org.jsoft.lianxi;

public class Magicer extends Role{
            private int level;
            public int getLevel() {
                return level;
            }
            public void setLevel(int level) {
                
                this.level = level;
            }
            public  int attack(){
                return this.level*5;
            }
            public Magicer(int level ){
                this.level=level;
            }
            public String attack1(){
                return getName()+"攻击伤害"+getLevel();
            }
}

Soldier类:

package org.jsoft.lianxi;

public class Soldier extends Role{
        private  int hurt;
        public int getHurt() {
            return hurt;
        }
        public void setHurt(int hurt) {
            this.hurt = hurt;
        }
        public int attack(){
            return this.hurt;
        }
        public Soldier(int hurt){
            this.hurt=hurt;
        }
        public String attack1(){
            return getName()+"攻击伤害"+getHurt();
        }
}

Team类:

package org.jsoft.lianxi;

public class Team {//一个组队

        Role [] member= new  Role[6];//定义一个引用型数组,因为是角色,所以用Role
        int i= 0;
        public void addMember(Role role){
                member[i++] = role; //赋值
         }
         public int attackSum(){
          int atsum = 0;//初始化总攻击值
          for(int j=0; j<i; j++){
           atsum =atsum+member[j].attack();//对组队成员的攻击值进行求和
          }
          return atsum;
         }
}
 Test类:

package org.jsoft.lianxi;

public class Test {
    public static void main(String[] args) {
        Role r=new Magicer(5);
        r.setName("法师");
        System.out.println(r.attack1());
        Role r1=new Soldier(6);
        r1.setName("战士");
        System.out.println(r1.attack1());
        Team t=new Team();
        t.addMember(r);
        t.addMember(r1);    
        System.out.println("组队攻击伤害为:"+t.attackSum());
    }
}
运行结果:

180924_eHd6_3686592.png

转载于:https://my.oschina.net/u/3686592/blog/1572437

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值