菜鸟 关于找不到合适的构造器 实参和形参长度不同的问题?

抉择、 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, "无", "无");

...全文
141 5 打赏 收藏 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
抉择、 2019-11-25
  • 打赏
  • 举报
回复
引用 4 楼 weixin_40599844 的回复:
父类Hero没有无参数的构造方法,所以
public Tank() {
super(); //这里出错,要么注释掉这样,要么super("")调用父类构造方法
}
好的,已经找到了谢谢🙏
weixin_40599844 2019-11-25
  • 打赏
  • 举报
回复
父类Hero没有无参数的构造方法,所以
public Tank() {
super(); //这里出错,要么注释掉这样,要么super("")调用父类构造方法
}
抉择、 2019-11-23
  • 打赏
  • 举报
回复
引用 1 楼 qybao 的回复:
父类Hero没有无参数的构造方法,所以
public Tank() {
super(); //这里出错,要么注释掉这样,要么super("")调用父类构造方法
}
谢谢,找到了
抉择、 2019-11-23
  • 打赏
  • 举报
回复
谢谢,找到了
qybao 2019-11-20
  • 打赏
  • 举报
回复
父类Hero没有无参数的构造方法,所以
public Tank() {
super(); //这里出错,要么注释掉这样,要么super("")调用父类构造方法
}
打开链接下载源码: https://pan.quark.cn/s/e18529987bb9 ### ETS中文教程:KNX施耐德智能家居 #### 知识点一:ETS软件概述与启动 ETS(Engineering Tool Software)是由施耐德电气研发的一款专业设计工具,其核心功能在于构建和配置基于KNX标准的智能家居及楼宇自动化系统。KNX代表一种国际公认的开放式标准,该标准在楼宇自动化领域得到广泛应用,其目的是实现不同品牌设备之间的互联互通。 **软件启动方法**:ETS软件可以通过双击其图标来启动,或者从开始菜单中选择“File”->“New Project”,亦或直接使用Ctrl+N快捷键来启动该软件。 #### 知识点二:工程项目创建 在启动新的工程项目时,需要遵循以下流程: 1. **项目命名**:推荐使用数字与字母的组合来命名项目,例如“Officebuildings”,这样的命名方式有助于日后的管理和识别。 2. **构建建筑物模型**:在“Buildings/Functions”部分添加建筑物,自定义其名称(例如“mg”),并确认创建操作。 3. **添加房间**:针对每一个建筑物,可以进一步添加房间,同样地,为房间自定义名称(如“1F”),以此来构建完整的建筑模型。 #### 知识点三:设备加载与配置 设备加载是ETS软件中的核心环节,其作用在于将实际的智能设备(包括开关、传感器等)整合到项目中: 1. **设备加载过程**:在目标房间处进行右键点击,选择“Add Devices”,随后通过“Product Finder”对话框选择合适的制造商和产品系列,以此来加载所需的设备类型。 2. **地址分配**:在设备加载完成后,应手动为其分配独...
代码下载链接: https://pan.quark.cn/s/a4b39357ea24 在客户端编程中,有时我们需要对用户上传的Excel文件内容进行管理,并将其转化为JSON格式以便进行后续操作或与服务器端进行数据交换。这一过程通常包含文件读取、数据解析以及格式转换等步骤。以下是一些关于如何运用JavaScript达成这一功能的核心要点: 1. **File API**:在当前版本的浏览器中,我们可以借助File API来获取用户上传的文件。`FileReader`对象提供了异步获取文件内容的方法,例如`readAsArrayBuffer()`,用于读取文件内容。 2. **XLSX库**:由于浏览器自带的API不直接支持Excel文件的解析,我们需要借助第三方库。其中,`xlsx`库是一个广受欢迎的选择,它能解析多种Excel文件格式(如XLS、XLSX、CSV等)并提供便捷的数据操作接口。 3. **获取Excel文件**:借助`xlsx`库,我们首先需要将File API获取到的`ArrayBuffer`转换为可解析的格式。例如,可以调用`XLSX.read(arrayBuffer, {type: buffer})`进行格式转换。 4. **解析工作表内容**:`xlsx`库解析完成后,会返回一个对象,其中包含了所有工作表的信息。我们可以通过`XLSX.utils.sheet_to_json(worksheet)`方法将单个工作表转换为二维数组,这类似于Excel中的表格数据。 5. **转化为JSON对象**:二维数组可以很方便地转化为JSON对象。遍历数组,每行数据作为JSON对象的一个属性,属性名为单元格的列名,属性值为单元格的值。可以使用`Arr...

62,620

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧