设置椭圆投掷错误

And*_*raz 0 java graphics swing nullpointerexception

我目前正在开发一个项目,我得到了这个错误Java.lang.NullPointerException,我不知道当你尝试引用一个空对象实例时会发生这个错误,但我不知道,我是如何解决它的.

这是我的代码:

public void paint(Graphics g) {
    g.setColor(Color.red);
    g.drawOval(150, 150, 10, 10);
}

/** Main Method **/
public static void main(String [] args) {
    Run run = new Run();
    run.paint(null);
}
Run Code Online (Sandbox Code Playgroud)

请帮助我解决方案并解释它,以便我学习它.提前谢谢了.安德烈

PrR*_*rR3 5

您不能将null传递给paint方法!这是一个小例子如何做到:

import java.awt.Graphics;

import javax.swing.JComponent;
import javax.swing.JFrame;

class MyCanvas extends JComponent {

    @Override
    public void paintComponent(Graphics g) {
        super.paintComponent(g);
        g.drawOval (10, 10, 200, 200);  
    }
}

public class DrawOval {
    public static void main(String[] a) {
        JFrame window = new JFrame();
        window.setBounds(30, 30, 300, 300);
        window.getContentPane().add(new MyCanvas());
        window.setVisible(true);
    }
}
Run Code Online (Sandbox Code Playgroud)