菜鸟 关于找不到合适的构造器 实参和形参长度不同的问题?
抉择、 2019-11-20 11:00:57 public interface GameDao { //接口
void showInfo();//显示玩家拥有的全部英雄
public void showPackage();//显示背包内物品及装备信息
public void showLords();//显示时空之境四个领主信息
public void showLotteryPool();//显示本期卡池详细信息
public void showHandBook();//显示全英雄图鉴
}
@Data
@NoArgsConstructor
//父类
public abstract class Hero {
private String name;//英雄的名字
private String profession;//英雄的职业
private String race;//英雄的种族
private String skill;//英雄的普通技能
private String uniqueSkill;//英雄的绝技
private String rarity;//英雄的稀有度
private int damage;//英雄的攻击力
private int health;//英雄的生命值
private int armor;//护甲,物理攻击的抵抗系数
private int magicResistance;//魔抗,魔法攻击的抵抗系数
private int grade;//等级,英雄的某些属性有一定的成长系数 这些属性会随着等级的提升而提升
public String showInfo() {
return this.rarity+this.name+this.profession+this.race+this.damage+this.armor+this.magicResistance+this.health+this.skill+this.uniqueSkill;
// return this.getRarity() + "\t" + getName() + "\t" + getProfession() + "\t" + getRace() + "\t" + getDamage() + "\t" + getArmor() + "\t" + getMagicResistance() + "\t" + getHealth() + "\t" + getSkill() + "\t" + getUniqueSkill();
}
public Hero(String name) {
this.name = name;
}
//英雄的攻击方法
public int attack() {//对0防御的敌人造成的伤害
return 0;
}
public Hero(String rarity, String name, String profession, String race, int damage, int armor, int magicResistance, int health, String skill, String uniqueSkill) {
this.rarity = rarity;
this.name = name;
this.profession = profession;
this.race = race;
this.damage = damage;
this.armor = armor;
this.magicResistance = magicResistance;
this.health = health;
this.skill = skill;
this.uniqueSkill = uniqueSkill;
}
}
package cn.kgc.tangcco.game.entity;
public class Ranger extends Hero {//子类
public Ranger() {
}
public Ranger(String name) {
super(name);
}
public Ranger(String rarity, String name, String profession, String race, int damage, int armor, int magicResistance, int health, String skill, String uniqueSkill) {
super(rarity, name, profession, race, damage, armor, magicResistance, health, skill, uniqueSkill);
}
//攻击方法
public int attack() {//对0防御的敌人造成的伤害
return 1;
}
public String showInfo() {
return super.showInfo();
}
}
public class Tank extends Hero {
public Tank() {
super();
}
public Tank(String name) {
super(name);
}
public Tank(String rarity, String name, String profession, String race, int damage, int armor, int magicResistance, int health, String skill, String uniqueSkill) {
super(rarity, name, profession, race, damage, armor, magicResistance, health, skill, uniqueSkill);
}
@Override
public String showInfo() {
return super.showInfo();
}
import java.util.Scanner;
public class GameDaoImpl implements GameDao {//管理类
Scanner scanner = new Scanner(System.in);
Hero[] hero = new Hero[50];//背包英雄数组
Boss[] boss = new Boss[4];
public static Hero[] books = new Hero[50]; //全英雄图鉴
static {
// Hero 有5个子类:
// 游侠 Ranger
// 法师 Magicer
// 坦克 Tank
// 辅助 Auxiliary
books[0] = new Tank("R", "天蓬元帅", "坦克", "神族", 60, 30, 20, 1250, "无", "无");
books[1] = new Magicer("R", "雷霆之握", "法师", "神族", 75, 10, 5, 800, "无", "无");
books[2] = new Ranger("R", "雷霆之握", "射手", "人族", 200, 10, 10, 900, "普通攻击", "无");
books[3] = new Tank("R", "皇家荣耀", "坦克", "人族", 60, 30, 30, 1300, "无", "无");
books[4] = new Auxiliary("R", "贵族之心", "辅助", "人族", 40, 10, 10, 800, "无", "无");
books[5] = new Assassin("R", "贵族之心", "辅助", "人族", 40, 10, 10, 800, "无", "无");
books[6] = new Magicer("R", "破碎恐惧", "法师", "冥族", 70, 5, 10, 750, "无", "无");