java绘图方法paintComponent(Graphics g){}内容不显示


import java.awt.*;
import javax.swing.*;
class Panel extends JPanel {

public static void main(String[] args){
Panel panel = new Panel();
panel.go();
}

public void go(){
JFrame frame = new JFrame();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setSize(300,300);
frame.setVisible(true);

}


public void paintComponent(Graphics g){
g.setColor(Color.orange);
g.fillRect(20,50,100,100);
}


}

以上代码编译可以通过,但是执行出来的就一个空白frame,没有paintComponent(Graphics g){}里的图画内容,要怎么改

代码换成如下


import java.awt.Color;
import java.awt.Graphics;

import javax.swing.JFrame;

public class Panel extends JFrame {
    public static void main(String[] args) {
        new Panel().setVisible(true);
    }

    public Panel() {
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        setSize(300, 300);
        setLocationRelativeTo(null);
    }

    public void paint(Graphics g) {
        g.setColor(Color.orange);
        g.fillRect(20, 50, 100, 100);
    }

}

有没有大佬帮帮忙啊!