Java编程初学者作业

(1)定义一个游戏中的英雄的类Hero, 在该类中定义三个属性:String)名字,(int) 生命值和(int) 等级,通过构造函数传递参数对三个属性进行初始化;定义. 个格斗方法fight(Heroh),传入参数为Hero类型,实现将该英雄h的生命值-10。 (2)定义“个超级英雄类Superhero, 继承自Hero, 定义属性(int)绝招,通过构造函数传递参数实现初始化,重写格斗方法,实现将该英雄的生命值-20:重载格斗方法,增加传入参数绝招,实现将该英雄的生命值-20*绝招。 (3)在main 方法中分别创建. 个Hero FISuperhero对象并初始化,并通过Hero和ISuperhero的对象分别调用格斗方法,最后, 分别输出两个对象的生命值。

package gz.ht.edu;

public class Hero{
	private String name;
	private int level;
	private int life;
	
	public Hero(String name, int level, int life) {
		this.name = name;
		this.level = level;
		this.life = life;
	}
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	public int getLevel() {
		return level;
	}
	public void setLevel(int level) {
		this.level = level;
	}
	public int getLife() {
		return life;
	}
	public void setLife(int life) {
		this.life = life;
	}
	
	public void fight(Hero hero){
		hero.setLife(hero.getLife()-10);
	}
}

代码如上,万望采纳

我给你写,待会可以发给你。

package gz.ht.edu;

public class SuperHero extends Hero{

	private int kill;
	
	public SuperHero(String name, int level, int life,int kill) {
		super(name, level, life);
		this.kill=kill;
	}
	
	//重写
	@Override
	public void fight(Hero hero) {
		hero.setLife(hero.getLife()-20);
	}
	//重载
	public void fight(Hero hero,int kill) {
		hero.setLife(hero.getLife()-20*kill);
	}
	
	public int getKill() {
		return kill;
	}
	public void setKill(int kill) {
		this.kill = kill;
	}
	
	public static void main(String[] args) {
		Hero hero=new Hero("张三",1, 100);
		hero.fight(hero);
		System.out.println(hero.getName()+"的生命值:"+hero.getLife());
		
		SuperHero shero=new SuperHero("李四", 1, 100, 10);
		shero.fight(shero);
		shero.fight(shero, shero.getKill());
		System.out.println(shero.getName()+"的生命值:"+shero.getLife());
				
	}
	

}

这个是超级英雄类

您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~

如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~

ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632