黑马程序员技术交流社区
标题:
关于Console对象readline方法的问题(已解决)
[打印本页]
作者:
杨震
时间:
2012-8-10 21:22
标题:
关于Console对象readline方法的问题(已解决)
本帖最后由 杨震 于 2012-8-11 21:47 编辑
<p>
package com.taobao.szyangzhen;
import java.io.Console;</p><p>public class InputTest {</p><p> /**
* @param args
*/
public static void main(String[] args) throws NullPointerException {
Console con = System.console();
System.out.println("what is your name?");
String name = con.readLine();
System.out.println("what is your age?");
String passwd = new String(con.readPassword());
System.out.println("name:" + name + "-----" + "passwd:" + passwd);
}
为什么总是报错啊,下面是输出(14行是这行代码: String name = con.readLine();)
what is your name?
Exception in thread "main" java.lang.NullPointerException
at com.taobao.szyangzhen.InputTest.main(InputTest.java:14)
</p><p>}</p>
复制代码
作者:
朱志辉
时间:
2012-8-10 22:31
你这是Eclipse等工具中运行吧?换成到CMD中javac编译、java执行就能够正常了。
Eclipse中的控制台跟操作系统的控制台不一样。
所以,实际上你获取到的是System.console是null。所以在con.readLine()的时候会出现空指针异常。
作者:
杨震
时间:
2012-8-10 22:38
是这样的啊,我试下命令行
作者:
杨震
时间:
2012-8-11 19:54
谢谢,你解释是正确的,我在命令行下试可以的
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2