为什么在尝试创建新控制台时会出现异常?

时间:2014-05-12 06:37:22

标签: java scjp

import java.io.*;

public class Talk {
    public static void main(String[] args) {
        Console c = new Console();
        String pw;
        System.out.print("password: ");
        pw = c.readLine();
        System.out.println("got " + pw);
    }
}

请在控制台

向我解释这个编译器异常
  

java:5:错误:Console()在Console Console中具有私有访问权限c = new Console();                                                                               ^ 1错误

1 个答案:

答案 0 :(得分:1)

Console类显然不是要直接实例化的。您应该使用System.console代替:

  

如果此虚拟机具有控制台,则它由a表示   这个类的唯一实例,可以通过调用获得   System.console()方法。如果没有可用的控制台设备那么   调用该方法将返回null。

See the docs

相关问题