我想分配一個子類對象數組到它的超類。該程序編譯成功,但我得到一個ArrayStoreException
。我知道數組父和子都是對同一個數組的引用,但是我不應該至少可以訪問方法func
?Java:超類數組對象分配有子類數組對象
class Pclass
{
Pclass()
{
System.out.println("constructor : Parent class");
}
public void func()
{
System.out.println("Parent class");
}
}
class Cclass extends Pclass
{
Cclass()
{
System.out.println("Constructor : Child class");
}
public void func2()
{
System.out.println("It worked");
}
public void func()
{
System.out.println("Common");
}
}
public class test
{
public static void main(String ab[])
{
Cclass[] child = new Cclass[10];
Pclass[] parent = child;
parent[0]=new Pclass();
parent[0].func();
}
}
作爲適當的java代碼,您對可見度非常挑剔。對於統一的代碼,你想在那裏有一些「公共」(並且你想要修復那個空白遍佈的地方......記得通讀http://stackoverflow.com/help/how-to-ask--「記得校對「部分不在那裏只是爲了好玩,很多人,你包括在內,忘了) – 2014-11-25 06:24:18