小弟刚学java编程.下面的程序不知道哪里出了问题,找了半天也不知道, 实在是不会了望大神们急救!
package com.sajame;
import java.awt.*;
import javax.swing.*;
public class jiemian1 extends JFrame {
JButton jb1,jb2,jb3,jb4,jb5;
public static void main(String[] args) {
jiemian1 jiemian1=new jiemian1();
}
public jiemian1()
{//在构造函数里创建组件和添加组件
jb1=new JButton("中部");
jb1=new JButton("北部");
jb1=new JButton("南部");
jb1=new JButton("西部");
jb1=new JButton("东部");
this.add(jb1,BorderLayout.CENTER);
this.add(jb2,BorderLayout.NORTH);
this.add(jb2,BorderLayout.SOUTH);
this.add(jb2,BorderLayout.WEST);
this.add(jb2,BorderLayout.EAST);
//设置窗体,
this.setTitle("边界布局案例");
this.setSize(300,300);
this.setLocation(20, 20);
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
//xianshichuangti
this.setVisible(true);
}
}
myeclipse 9.0的错误提示如下:
Exception in thread "main" java.lang.NullPointerException
at java.awt.Container.addImpl(Container.java:1041)
at java.awt.Container.add(Container.java:959)
at javax.swing.JFrame.addImpl(JFrame.java:545)
at java.awt.Container.add(Container.java:927)
at com.sajame.jiemian1.<init>(jiemian1.java:39)
at com.sajame.jiemian1.main(jiemian1.java:21)
查看还得到下面的提示说改代码jiemian1 jiemian1=new jiemian1(); 的错误是:The local variable jiemian1 is never read
另外一处代码:
public class jiemian1 extends JFrame {提示:The serializable class jiemian1 does not declare a static final serialVersionUID field of type long
望大神们指点迷津~!
------解决方案--------------------
我试了一下,能运行. cmd 下什么错都没有。
把构造函数里的变量名改一下,怎么都是 jb2.
我想它提示的意思是局部变量jiemian1一直没有用,的确也是这样。
Jiemian1 jiemian1=new Jiemian1();
这句产生了jiemian1对象的引用,没有调用。 你可以直接这样:
new Jiemian1(); 就行。
试试看。