2010-11-02 49 views
2

類圖像是一個抽象類 - 因此,程序不能實例化類圖像來創建對象。爲了實現平臺獨立性,每個平臺上的Java實現提供其自己的Image子類來存儲圖像信息。使用類存儲圖像信息圖像

該文本是關於類java.awt.Image

我不明白的第二部分,即: -

...提供圖像自身的子類來存儲圖像信息。

從技術上講,這是怎麼發生的?

+0

如今你寧願使用獨立於平臺的BufferedImage。 – 2010-11-02 18:55:58

回答

3

Image實例通常通過諸如Toolkit.createImage()等方法創建。在這種情況下,Image對象的實際實例被委託給Toolkit類,該類依賴於平臺。

請注意,儘管您不能直接實例化類Image,但您可以實例化BufferedImage,這是一個具體的Image子類。

+0

對。這意味着該實現還必須提供Toolkit的子類。 – 2010-11-02 18:53:58

0

Image的具體子類在某些情況下可能是不屬於JDK公共API的類。 (在其他情況下,您可能會發現獲得BufferedImage,如果您打算對獲得的圖像執行某些操作,則會更好。)

嘗試System.out.println(img.getClass().getName());只是爲了查看您要獲取的內容。