我有另一个初学者的问题,希望有人可以提供帮助。
我正在尝试将数组从一个类传递到另一个类,以便使用它来生成条形图。我知道我可以将数组作为参数传递,但是我遇到了一些错误并且基本上有点迷失了。图表类的基本代码如下。假设我想从“AnotherClass”传递“anArray”,谁能告诉我应该如何传递它?
我尝试将它作为 JBChart & chartComponent 的参数传递,但我认为我需要它在paintComponent 中?由于它已经有“Graphics g”作为参数,我很困惑。无论如何,这两个中的任何一个都会出现 nullPointer 错误(尽管我知道我也可能做错了其他事情)。
这是图表类的基本代码。非常感谢任何想法:
public class JBChart extends JFrame {
public JBChart() {}
public void buildChart()
{
ChartComponent component = new ChartComponent();
chartFrame.add(component);
chartFrame.setVisible(true);
}
}
public class ChartComponent extends JComponent {
public ChartComponent() {}
public void paintComponent(Graphics g)
{
Graphics2D g2 = (Graphics2D) g;
}
--
-编辑-
这是其中一个堆栈跟踪的前几行(我希望这就足够了吗?):-
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException at ChartComponent.<init>(ChartComponent.java:43) at JBChart.<init>(JBChart.java:32)
at JavaBallGUI.displayBarChart(JavaBallGUI.java:273)
at JavaBallGUI.actionPerformed(JavaBallGUI.java:310)
-- 它指向的行是:
for (int i = 0; i < teamObjects.length; i++)
{
if (teamObjects[i] != null)
{
teamName = teamObjects[i].getTeamName();
System.out.println(teamName);
}
}