我需要一些帮助。所以我有这个。我基本上想知道,当你创建一个父类的对象数组,然后将该对象更改为一个子类,我可以访问该子类的方法,如果不是为什么。谢谢你的帮助。将父对象更改为子对象
public class Racer {
private String name;
private int position;
// Constructor
public Racer()
{}
public Racer(String name)
{
this.name = name;
position = 0;
}
public String getName()
{
return name;
}
public int getPosition()
{
return position;
}
public void setPosition(int n)
{
position = n;
}
public void setName(String n){
this.name=n;
}
}
子类
public class Spartiates extends Racer{
private int energy;
public Spartiates(){
super();
}
public Spartiates(String name){
setName(name);
setPosition(20);
energy=100;
}
public void setEnergy(int energy){
this.energy=energy;
}
public int getEnergy(){
return energy;
}
}
主类
public class demo{
public static void main(String[] args){
Racer [] player = new player[3];
for(int i=0; i<player.length; i++){
player[i] = new Spartiates();
}
System.out.println(player[1].getEnergy());
}
所以这里getEnergy方法不那么正常工作的问题,我想知道为什么。如果有人能帮助它将非常感激。谢谢