我有3个类,MainClass和main方法,一个名为AbstractClass的抽象类和Subclass,它将被AbstractClass扩展。java对象和继承数组
对象数组是在包含1个成员的类AbstractClass的main方法中创建的。 然后,我将数组的1个元素初始化为类型Subclass(这可以吗?)。 问题是我无法到达创建的对象(数组[0])的getDataToExport()方法。 我怀疑问题发生,因为该数组是AbstractClass类型... 而问题:这甚至有可能完成? 我想要做的是使用一个AbstractClass类型的数组,并填充由不同的子类(在这段代码中只是一个 - >子类)扩展AbstractClass的对象,但我不能得到该子类的方法。
主类主用方法
public class MainClass {
public static void main() {
AbstractClass array[]=new AbstractClass[1];
array[0]= new Subclass(); // is this even allowed?
System.out.println(array[0].getDataToExport()); // Problem!
}
}
抽象类
public abstract class AbstractClass {
}
子类,其延伸抽象类
public class Subclass extends AbstractClass {
private int dataToExport;
public Subclass(){
this.dataToExport=2;
}
public int getDataToExport() {
return dataToExport;
}
}
谢谢,这真的帮了我很多 – Luka 2010-11-09 21:12:25
@Luka:很酷,很高兴帮助。如果您觉得它回答了这个问题,您需要点击答案开头左侧的空白复选标记,以便您将问题标记为“已回答”。 (如果你*不认为这回答了这个问题,那么不要那样做。:-)) – 2010-11-09 22:18:05