Console的readLine()中的NullPointerException

and*_*and 5 java console

这个:

Console c = System.console();
        String readline;
        String u = c.readLine("%s", "args");
Run Code Online (Sandbox Code Playgroud)

抛出NullPointerException.然而该方法的签名是:

 public String readLine(String fmt, Object... args)
Run Code Online (Sandbox Code Playgroud)

为什么抛出这个异常?

McD*_*ell 17

Console c = System.console();
Run Code Online (Sandbox Code Playgroud)

c空的吗?

Doc:

public static控制台控制台()

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

返回:系统控制台(如果有), 否则为null.