当前位置: 代码迷 >> Java相关 >> java 里的异常该如何处理呀,求大神帮忙
  详细解决方案

java 里的异常该如何处理呀,求大神帮忙

热度:686   发布时间:2013-10-17 01:08:22.0
java 里的异常该如何处理呀,求大神帮忙
import java.awt.*;
import javax.swing.*;
public class l7 extends JFrame{
JLabel bq1;
JButton an1,an2,an3; JPanel mb1;
JTabbedPane xxk;
JPanel mb2,mb3,mb4;
JLabel bq2,bq3,bq4,bq5;
JTextField wbk;
JPasswordField mmk;
JButton an4;
JCheckBox fxk1,fxk2;
public static void main(String[]args){
l7 xy =new l7();
}
public l7(){
bq2=new JLabel("裸聊号码",JLabel.CENTER);
bq3=new JLabel("裸聊密码",JLabel.CENTER);
bq4=new JLabel("忘记密码",JLabel.CENTER);
bq4.setFont(new Font("宋体",Font.PLAIN,16));
bq4.setForeground(Color.BLUE);
bq5=new JLabel("<html><a href='www.qq.com'>申请密码保护</a>");
bq5.setCursor(Cursor.getPredefinedCursor(Cursor.HAND_CURSOR));
wbk=new JTextField();
mmk=new JPasswordField();
an4=new JButton("清除号码");
fxk1=new JCheckBox ("隐身登录");
fxk2=new JCheckBox ("记住密码");
bq1=new JLabel(new ImageIcon("tupian/2.jpg"));
bq2=new JLabel(new ImageIcon("tupian/2.jpg"));
mb1=new JPanel();
an1=new JButton("登录");
an2=new JButton("取消");
an3=new JButton("向导");
xxk=new JTabbedPane();
mb2=new JPanel(); mb3=new JPanel();
mb3.setBackground(Color.GREEN);
xxk.add("普通用户",mb2); xxk.add("裸聊会员",mb3);xxk.add("管理员",mb4);
mb2.setLayout(new GridLayout(3,3));
mb1.add(an1); mb1.add(an2); mb1.add(an3);
mb2.add(bq2); mb2.add(wbk); mb2.add( an4); mb2.add(bq3); mb2.add(mmk);
mb2.add(bq4); mb2.add(fxk1); mb2.add(fxk2); mb2.add(an4);
mb3.add(bq2); mb3.add(wbk); mb3.add( an4); mb3.add(bq3); mb3.add(mmk);
mb3.add(bq4); mb3.add(fxk1); mb3.add(fxk2); mb3.add(an4);
mb4.add(bq2); mb4.add(wbk); mb4.add( an4); mb4.add(bq3); mb4.add(mmk);
mb4.add(bq4); mb4.add(fxk1); mb4.add(fxk2); mb4.add(an4);
this.add(mb1,BorderLayout.SOUTH);
this.add(bq1,BorderLayout.NORTH);
this.add(xxk,BorderLayout.CENTER);
this.setIconImage((new ImageIcon("tupian/1.jpg")).getImage());
this.setTitle("裸聊窗口");
this.setSize(340,270);

this.setLocation(300,280);
this.setResizable(false);

this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
this.setVisible(true);


}

}

Exception in thread "main" java.lang.NullPointerException
        at l7.<init>(l7.java:45)
        at l7.main(l7.java:14)
求大神帮忙看看


搜索更多相关的解决方案: 忘记密码  public  import  java  如何  

----------------解决方案--------------------------------------------------------
首先要知道这是什么异常,
Exception in thread "main" java.lang.NullPointerException
NullPointerException空指针异常这个应该很熟悉,定位报异常的位置,
at l7.<init>(l7.java:45)
        at l7.main(l7.java:14)说是在45行14行,现在去看看
public static void main(String[]args){这是你的14 行代码,看出有什么问题没有,你的main方法写错了

public static void main(String[] args){}//这是正确的,自己找区别

再看45行 mb4.add(bq2); mb4.add(wbk); mb4.add( an4); mb4.add(bq3); mb4.add(mmk);
这句代码也是比较容易发生空指针异常的地方。
你以变量的方式作为参数向其他地方注入的时候,就要注意,变量有没有可能是空值,你在这里可以用打印语句,打印下,其中肯定有值是空的,所以才会报错,我想你的代码肯定不是一个变量空的,自己好好找找。
现在问题点找出来了,自己测试下,多写写打印语句,会debug的就debug一下,多打些断点。看值的情况
----------------解决方案--------------------------------------------------------
java.lang.NullPointerException  空指针的错误。通常都是没有初始化对象,
错误源头在at l7.<init>(l7.java:45),(即mb4.add(bq2);行内容),很明显是mb4没有初始化的原因。
另外说一下at l7.main(l7.java:14)报错原因是由上面的错误源头导致的,
通常下面可能会的N多行错误原因都是第一个错误源头导致的,一般错误源头修正了衍生的问题也就解决了
----------------解决方案--------------------------------------------------------
谢谢,大神了。
----------------解决方案--------------------------------------------------------
回复 2楼 java小蚂蚁
大神,非常感谢。
----------------解决方案--------------------------------------------------------
对了,我想问一下。这个程序能否修改成在网页上运行的。如果可以该怎么修改呀。
----------------解决方案--------------------------------------------------------
可以,你把他部署到tomcat上就可以了,然后写个jsp页面作为它的action。配置下web.xml。可以用struts2.
----------------解决方案--------------------------------------------------------
异常往深处讲还是有些难度。。。初级阶段是要加强这些基本功学习。。。
----------------解决方案--------------------------------------------------------
  相关解决方案