【问题标题】:Cannot instantiate the type Image java?无法实例化 Image java 类型?
【发布时间】:2013-09-28 10:31:14
【问题描述】:
public Image  images[] = new Image[20];

    for(i=0; i<10; i++){
images[i]=new Image(getClass().getResource("/images/"+i+".jpg"));
        }

我正在尝试将图像添加到数组,但它给出了错误无法实例化类型 Image j

可能是什么原因?

【问题讨论】:

  • 不能直接实例化抽象类!

标签: java image swing embedded-resource imageicon


【解决方案1】:

抽象类不能直接实例化。你可以使用ImageIO.read,它返回BufferedImageImage的子类

void loadImages() throws IOException {

    for (int i = 0; i < 10; i++) {
        images[i] = ImageIO.read(getClass().getResource("/images/" + i + ".jpg"));
    }
}

【讨论】:

  • 这一行有多个标记 - 未处理的异常类型 IOException - 无法实例化类型 Image
  • IOException 是一个检查异常,它需要一个 try/catch 块或从周围的方法中抛出,如图所示
【解决方案2】:

Image 是一个抽象类,因此无法实例化。 您应该使用扩展Image 的类之一,例如BufferedImageVolatileImage

来源:Javadoc of Image

【讨论】:

    猜你喜欢
    • 2013-02-15
    • 2014-03-16
    • 2011-08-14
    • 2013-08-03
    • 1970-01-01
    • 2014-12-30
    • 2019-07-26
    • 2013-09-27
    • 2015-04-30
    相关资源
    最近更新 更多