java问题报错空指针怎么解决?

char[]passwd=cons.readPassword();这句错了.空格自动忽略。不然问题老是被封... ch ar[] pass wd=cons.rea dPassw ord(); 这句错了.

空格自动忽略。不然问题老是被封
展开
 我来答
卖贫道的小火柴
2014-03-09 · TA获得超过229个赞
知道小有建树答主
回答量:253
采纳率:0%
帮助的人:250万
展开全部
空指针异常产生的原因是:指针在内存中找不到指向的内存地址,换句话说,就是内存根本没有给指针指向的对象分配内存地址。也就是对象存在,但没有实例化或者初始化。此处要将cons中的字符读出,给char类型的数组,可能的原因就是cons没有实例化或初始化!
追问
Console cons=System.console();  
System.out.print(" 密码:");
char[] passwd=cons.readPassword();
这样写这么修改?
追答
java API中关于console的解释如下:

console
public static Console console()

返回与当前 Java 虚拟机关联的唯一 Console 对象(如果有)。

返回:系统控制台(如果有),否则返回 null。
从以下版本开始:1.6

你看看能不能换别的方法获取密码!
糖酥棍儿
2014-03-09 · TA获得超过692个赞
知道小有建树答主
回答量:393
采纳率:0%
帮助的人:389万
展开全部
cons 这个是一个对象吧,如果这个对象之前没有进行初始化,是一个空对象的话,就会出现类似的情况。 请确保一下 cons对象不为空
追问
Console cons=System.console();  
System.out.print(" 密码:");
char[] passwd=cons.readPassword();
这样写这么修改?
追答
针对console实例 在IDE下是无法获取到的,所以获取的对象是NULL 了,出现空指针了,你得使用其他的方法。

这里有比较好的方法,可以参考下。
http://blog.csdn.net/hongweigg/article/details/14448731
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
wqw0000oooo
2014-03-09 · TA获得超过246个赞
知道小有建树答主
回答量:200
采纳率:100%
帮助的人:165万
展开全部
留下QQ帮你解决
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式