0
我堅持與java的向下轉換問題。問題與downcasting圖片
這是劇情: 類MyPicture
擴展了抽象類BufferedImage
。關鍵是要添加幾個方法到BufferedImage
。然後,我有類MyWindow
它設置了一個用戶友好的窗口。在本課中,我想加載MyPic
中的圖片,將其複製到MyPic_filtered
中,使用中的MyPicture
中使用的方法,最後在分隔的窗口中顯示MyPic
和MyPic_filtered
(但這最後一部分是OK ^^)。 我不知道我應該使用哪種類型的MyPic
和MyPic_filtered
。我試圖將它們轉換爲正確的類型,但是它會生成但不會運行。
下面是代碼:
//Loading the picture
BufferedImage MyPic = ImageIO.read(new File(URL)); //URL is a string
//Copy the picture
MyPicture myPic_filtered = myPic;
//Use the method from MyPicture
myPic_filtered.method_from_MyPicture();`
有人能幫助我嗎?
'ImageIO.read()'不返回'MyPicture'。你不能神奇地把一個物體變成一個不是的物體。 – SLaks
另外Java是區分大小寫的,所以'MyPic!= myPic' – QBrute
* MyPicture類擴展了抽象類BufferedImage * *這個語句是不正確的。 'BufferedImage'不是抽象的。通常不需要擴展它,我會建議反對它。使用委託而不是繼承。 – haraldK