我java.io.Console使用eclipse 尝试了API.我的示例代码如下.
package app;
import java.io.Console;
public class MainClass {
/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Console console = System.console();
console.printf("Hello, world!!");
}
}
Run Code Online (Sandbox Code Playgroud)
当我尝试运行该示例时,我收到以下错误.
app.MainClass.main(MainClass.java:11)中线程"main"java.lang.NullPointerException中的异常
我哪里做错了?谢谢.
Console根据这个错误报告,由于你在评论中提到你正在使用Eclipse,因此似乎目前在Eclipse中没有支持.
该System.console方法返回与当前Java虚拟机关联的控制台,如果没有控制台,则返回null.从System.console方法的文档:
返回
Console与当前Java虚拟机关联的唯一对象(如果有).返回:
否则,系统控制台(如果有)
null.
不幸的是,这是正确的行为.您的代码中没有错误.可以做的唯一改进是对对象进行null检查Console以查看是否已经返回了某些内容; 这将NullPointerException通过尝试使用不存在的Console对象来防止.
例如:
Console c = System.console();
if (c == null) {
System.out.println("No console available");
} else {
// Use the returned Console.
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3369 次 |
| 最近记录: |