
import java.awt.Color;
import java.awt.Dimension;
import java.awt.Graphics;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;

public class GUI extends JFrame{

    public GUI() {
        setTitle("Frame");
        setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        add(new MainPanel());
        setResizable(false);
        pack();
        setVisible(true);
    }

    public static void main(String[] args) {
        new GUI();
    }
}

class MainPanel extends JPanel{

	private final Dimension size = new Dimension(500, 500);

	public MainPanel() {

        JLabel label = new JLabel();
        setBackground(Color.black);
        label.setText("Hello World");
        label.setForeground(Color.green);
        add(label);
	}

    @Override
	public void paintComponent(Graphics g) {
    	super.paintComponent(g);
        g.setColor(Color.GREEN);
        g.drawLine(0, 250, 500, 250);
    }

    @Override
    public Dimension preferredSize() {
    	return size;
    }
}