Java 将ImageIcon加载到现有JLabel

Java 将ImageIcon加载到现有JLabel,java,jlabel,imageicon,Java,Jlabel,Imageicon,我已经知道JLabel可以在JLabel的声明中使用ImageIcon,如下所示 JLabel stick = new JLabel(new ImageIcon("stickPicture.gif")); 我的问题是,如何在声明后将图片分配给JLabel。例如(这实际上不是有效的代码,这只是我认为可能有效的技术) 这是一个奇怪的问题,只是想知道是否可以做到。使用JLabel#setIcon(图标) 使用JLabel#设置图标(图标) 如果stick是数组中的一个元素,为什么不起作用>JLabe

我已经知道
JLabel
可以在
JLabel
的声明中使用
ImageIcon
,如下所示

JLabel stick = new JLabel(new ImageIcon("stickPicture.gif"));
我的问题是,如何在声明后将图片分配给
JLabel
。例如(这实际上不是有效的代码,这只是我认为可能有效的技术)

这是一个奇怪的问题,只是想知道是否可以做到。

使用JLabel#setIcon(图标)

使用JLabel#设置图标(图标)


如果stick是数组中的一个元素,为什么不起作用>JLabel stick[]=new JLabel[10];stick[5].setIcon(新的图像图标(“stick.gif”);执行此操作时,我收到一个空指针错误^。你知道为什么吗?你得到了一个NullPointerException,因为没有定义stick[5]。否则,这段代码就可以正常工作。数组的声明代码就在“public class Window{”之后,我在这里分配stick[5]to imageIcon stick.gif在类的构造函数中。我仍然得到一个空指针异常,您知道这可能是什么原因吗?如果stick是数组中的一个元素,为什么不起作用>JLabel stick[]=new JLabel[10];stick[5]。setIcon(new imageIcon(“stick.gif”));执行此操作时,我得到一个空指针错误^。您知道为什么吗?您得到的是一个空指针异常,因为没有定义stick[5]。否则,这段代码可以正常工作。数组的声明代码就在“public class Window{”之后,在这里我分配stick[5]to imageIcon stick.gif在类的构造函数中。我仍然得到一个空指针异常,您知道这可能是什么原因吗?
JLabel stick = new JLabel();
stick = new ImageIcon("stickPicture.gif"));
JLabel stick = new JLabel();
stick.setIcon(new ImageIcon("stickPicture.gif"));