Java 我的类中的空指针错误

Java 我的类中的空指针错误,java,exception,Java,Exception,我的教授给了我这个代码,它应该按原样运行。 我编译它并得到以下错误 java.lang.NullPointerException at WholePanel.<init>(WholePanel.java:59) at Assignment7.init(Assignment7.java:19) at sun.applet.AppletPanel.run(AppletPanel.java:435) at java.lang.Thread.run(Threa

我的教授给了我这个代码,它应该按原样运行。 我编译它并得到以下错误

java.lang.NullPointerException
    at WholePanel.<init>(WholePanel.java:59)
    at Assignment7.init(Assignment7.java:19)
    at sun.applet.AppletPanel.run(AppletPanel.java:435)
    at java.lang.Thread.run(Thread.java:744)
整个面板


import java.awt.*;
导入javax.swing.*;
导入java.awt.event.*;
导入java.util.ArrayList;
公共类WholePanel扩展了JPanel
{
私人色彩;
私人画布;
private JPanel primary、buttonPanel、leftPanel;
私人按钮擦除,撤消;
私人ArrayList矩形列表,圣殿骑士;
私有JRadioButton[]彩色按钮;
私人色彩[]颜色;
专用int x1、y1、x2、y2、x3、y3;
私有布尔mouseDragged=false;
//构造函数来实例化组件
公共全面板()
{
//绘制矩形的默认颜色为黑色
currentColor=Color.black;
rectList=newarraylist();
//创建按钮
//创建5种颜色的单选按钮
//默认情况下将选择黑色
ColorButtons=新的JRadioButton[5];
ColorButtons[0]=新的JRadioButton(“黑色”,true);
//在一个数组中存储5种颜色
//将单选按钮分组,以便在选择单选按钮时,
//其他将被取消选择。
ButtonGroup=新建ButtonGroup();

对于(inti=0;i来说,您似乎只创建了一个彩色按钮,但尝试使用所有五个


因此,在ColorButtons中[0]不是空的,但所有其他按钮都是空的,因此不可能为它们使用addActionListener。

您似乎只创建了一个ColorButtons,但尝试使用所有五个

因此,在ColorButtons中[0]不是空的,但所有其他按钮都是空的,因此不可能为它们使用addActionListener。

在此循环中

for (int i=0; i<colorRButtons.length; i++)
    colorRButtons[i].addActionListener(listener);
已创建。

在此循环中

for (int i=0; i<colorRButtons.length; i++)
    colorRButtons[i].addActionListener(listener);

已经创建。

请在这里帮我们一把。告诉我们WholePanel.java第59行是哪里的ColorrButtons[i]。addActionListener(listener);您能否确保不在代码中添加或删除行?如果行号与堆栈跟踪一致,这会有所帮助。WholePanel.java:59,发生异常的地方,现在似乎是一个注释…我知道这是您的教授给出的,但没有
ArrayList
的泛型,我的眼睛…在您的代码中,您只有initialize ColorButtons的第一个单选按钮(数组大小5),但您对所有按钮进行迭代并调用ColorButtons[i].addActionListener(listener);是否省略了其他按钮的初始化行?请在这里帮我们一把。告诉我们WholePanel.java第59行是ColorButtons[i].addActionListener(listener)的位置;您能否确保不在代码中添加或删除行?如果行号与堆栈跟踪一致,这会有所帮助。WholePanel.java:59,发生异常的地方,现在似乎是一个注释…我知道这是您的教授给出的,但没有
ArrayList
的泛型,我的眼睛…在您的代码中,您只有initialize ColorButtons(数组大小5)的第一个单选按钮,但您对所有按钮进行迭代并调用ColorButtons[i].addActionListener(listener);是否省略了其他按钮的初始化行?
for (int i=0; i<colorRButtons.length; i++)
    colorRButtons[i].addActionListener(listener);
 colorRButtons[0] = new JRadioButton("black", true);