Class Image是一个抽象类 - 因此,程序无法实例化类Image以创建对象。为了实现平台独立性,每个平台上的Java实现提供了自己的Image子类来存储图像信息。
该文字与班级java.awt.Image
有关。
我不明白第二部分,即: -
...提供自己的Image子类来存储图像信息。
从技术上讲,这是怎么发生的?
答案 0 :(得分:3)
Image
个实例通常是通过Toolkit.createImage()
等方法创建的。在这种情况下,Image
对象的实际实例化被委托给Toolkit
类,该类与平台有关。
请注意,虽然您无法直接实例化类Image
,但您可以实例化BufferedImage
,这是一个具体的Image
子类。
答案 1 :(得分:0)
在某些情况下,Image
的具体子类可能是一个不属于JDK公共API的类。 (在其他情况下,你可能会发现你得到一个BufferedImage
,如果你打算对你得到的图像做一些事情会更好。)
尝试System.out.println(img.getClass().getName());
只是为了看看你得到了什么。