java 中关于抛出异常的问题? Exception in thread "main" java.lang.NullPointerException at ATM.<init>

这是我的源码importjava.awt.*;importjava.awt.event.*;classATMextendsFrameimplementsActionLis... 这是我的源码
import java.awt.*;
import java.awt.event.*;
class ATM extends Frame implements ActionListener//(ATM报警告:The serializable class ATM does not declare a static final serialVersionUID field of type long)
{
int cardNO=123456;
int passwd=123456;
TextField text1,text2;
TextField card;
TextField pass;
Button login;
Label notice;
ATM(String s){
super(s);
login.addActionListener(this);
setLayout(new FlowLayout());
text1=new TextField("卡号:",6);
text1.setEditable(false);
card=new TextField(10);
text2=new TextField("密码:",6);
text2.setEditable(false);
pass=new TextField(6);
pass.setEchoChar('*');
add(text1);add(card);
add(text2);add(pass);
login=new Button("登录");
add(login);
notice=new Label(" ");
notice.setBackground(Color.cyan);
add(notice);
addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent e){
System.exit(0);
}
});
setBounds(100,100,400,400);
setVisible(true);
validate();

}
public void actionPerformed(ActionEvent e){
if(e.getSource()==login){
int c=0,p=0;
c=Integer.parseInt(card.getText());
p=Integer.parseInt(pass.getText());
if(c==cardNO&&p==passwd){notice.setText("卡号和密码正确!!");
}
else{notice.setText("卡号或密码有误!!请重新输入");
card.setText("");
pass.setText("");}

}
}

}

public class Card1 {
public static void main(String args[]){
ATM c1=new ATM("ATM");//(c1报警告The local variable c1 is never read )
}

}
展开
 我来答
菜茑阿八
2010-12-02 · TA获得超过227个赞
知道小有建树答主
回答量:271
采纳率:0%
帮助的人:131万
展开全部
①login.addActionListener(this);代码写的太早了 你应该把它放在add.(login)
②空指针 debug一下
③login还未实例化,就执行了login.addActionListener(this);,产生空指针。
修改:
将 login.addActionListener(this) 这一行,挪到 login=new Button("登录"); 这一行后面。
leo_java
2010-12-01
知道答主
回答量:2
采纳率:0%
帮助的人:0
展开全部
空指针
debug一下
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
zsx10110
2010-12-01 · TA获得超过8872个赞
知道大有可为答主
回答量:2369
采纳率:66%
帮助的人:3067万
展开全部
你的login.addActionListener(this);代码写的太早了 你应该把它放在add.(login)
你试试 我调试通过了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
BlackBeetle83
2010-12-01 · 超过12用户采纳过TA的回答
知道答主
回答量:62
采纳率:0%
帮助的人:22.7万
展开全部
错误原因:
login还未实例化,就执行了login.addActionListener(this);,产生空指针。
修改:
将 login.addActionListener(this) 这一行,挪到 login=new Button("登录"); 这一行后面。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
wangqin_mccn
2010-12-01
知道答主
回答量:4
采纳率:0%
帮助的人:0
展开全部
我是来做任务的不好意思。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式