父类:英雄(目标:摧毁敌方水晶)
子类:后羿(职业:射手,位置:下路,目标:摧毁敌方水晶)
子类:妲己(职业:法师,位置:中路,目标:摧毁敌方水晶)
子类:亚瑟(职业:战士,位置:上路,目标:摧毁敌方水晶)
搜了一下午代码没整出来,不是这报错就是那报错😭
以下是Java代码实现:
// 定义父类
class Hero {
// 目标为摧毁敌方水晶
public void destroyCrystal() {
System.out.println("摧毁敌方水晶!");
}
}
// 子类:后羿
class HouYi extends Hero {
// 职业为射手,位置在下路
public void job() {
System.out.println("职业:射手");
}
public void position() {
System.out.println("位置:下路");
}
}
// 子类:妲己
class DaJi extends Hero {
// 职业为法师,位置在中路
public void job() {
System.out.println("职业:法师");
}
public void position() {
System.out.println("位置:中路");
}
}
// 子类:亚瑟
class AShi extends Hero {
// 职业为战士,位置在上路
public void job() {
System.out.println("职业:战士");
}
public void position() {
System.out.println("位置:上路");
}
}
该代码定义了一个英雄(Hero)的父类和三个继承自英雄的子类(HouYi、DaJi、AShi)。在父类中定义了目标为摧毁敌方水晶的方法。在每个子类中,分别定义了职业和位置两个属性,并重写了父类中的目标方法。
例如,我们可以实例化一个后羿对象,并调用该对象中的方法:
HouYi houYi = new HouYi();
houYi.job(); // 输出:职业:射手
houYi.position(); // 输出:位置:下路
houYi.destroyCrystal(); // 输出:摧毁敌方水晶!
这样就能够通过继承实现代码的复用,并为每个不同的英雄设置独特的属性和目标。
我感觉出题的老师是不是对继承有误解。。。这里明显不是基类和派生类的关系,而是类和对象的关系。因为后裔、妲己、亚瑟都是单实例的个体,根本不构成类。
代码贴出来,指导你改