各位大虾,帮帮忙,小女子初学java,就遇到想不明白的问题了:(
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;public class QRFrame extends JFrame
{ QRFrame frame;
public QRFrame()
{
super("hello");
Container cp=frame.getContentPane();
JLabel labName=new JLabel("name");
cp.setLayout(new BorderLayout());
cp.add(labName,BorderLayout.NORTH);

}

public static void main(String[] args) 
{
JFrame frame=new QRFrame();
frame.setSize(600,800);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
}
}错误如下:Exception in thread "main" java.lang.NullPointerException
at com.songlyric.QRFrame.<init>(QRFrame.java:21)
at com.songlyric.QRFrame.main(QRFrame.java:34)
不明白,呜呜~

解决方案 »

  1.   

    Null是操作了还没有初始化的变量。回去看看书吧。超基础的错误之一
      

  2.   

    frame.getContentPane(); 
    你此时调用的的frame是一个未完成初始化的实例,换成thisat com.songlyric.QRFrame. <init> (QRFrame.java:21) 
    另空指针异常提示在21行 马上就能找到了
      

  3.   

    嘿嘿~真是女人吗?发照片看看,要是漂亮的话,我教你哟。
    import java.awt.*;
    import java.awt.event.ActionEvent;
    import java.awt.event.ActionListener;import javax.swing.JButton;
    import javax.swing.JFrame;
    import javax.swing.JLabel;public class QRFrame extends JFrame
    {//QRFrame frame;
    public QRFrame()
    {
    super("hello");
    Container cp=this.getContentPane();
    JLabel labName=new JLabel("name");
    cp.setLayout(new BorderLayout());
    cp.add(labName,BorderLayout.NORTH);}public static void main(String[] args) 
    {
    JFrame frame=new QRFrame();
    frame.setSize(600,800);
    frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    frame.setVisible(true);
    }