以下類型不匹配是我的代碼: -與多態性的ArrayList
ArrayList<animal> myanimals = new ArrayList<animal>();
dog adog = new dog();
myanimals.add(adog);
System.out.println("" + myanimals.get(0).getClass());
dog newdog = myanimals.get(0);
我已經創建了一個的ArrayList
動物(超)爲myanimals
和存儲在狗(子類)爲第一要素。然後myanimals.get(0)
返回一個狗型對象。當這種狗類型的對象是由在聲明dog newdog = myanimals.get(0)
狗類參考書中提到,它顯示了一個錯誤說:
類型不匹配,不能從動物轉換爲狗。
爲什麼會發生這種情況?
歡迎來到StackOverflow。請將代碼和錯誤發佈爲文字,而不是圖片 –
感謝您的編輯建議。 @Shashwat –