Rav*_*avi 10 console bufferedreader java.util.scanner java-5 java-6
我正在读关于Console
课程,在第一行,它是写的
Java 6的新手,当我们
Java SE 6
从命令行运行时,我们通常使用控制台类对象
那么,这意味着我们通过命令行隐式使用控制台类?
然后,我开始寻找有关Console类的更多细节,我在java和Console链接中找到了来自控制台类的Input.所以,总结了一些观点
- 控制台类只能在IDE之外使用
System.console().readLine();
Console
class 从控制台读取密码或密码,并使用回显禁用readPassword()
虽然,我们有Scanner类和BufferedReader类来从控制台读取输入,并且是在早期添加的Java 5
.那么,仅仅因为安全原因Console
类被添加了Java 6
?或者是否有其他优势可以使用本课程.
有人可以分享更多关于Console
课程的细节吗
Console 类直接从进程控制台读取(在 Unix 系统中通常是 /dev/console)。控制台与 System.in 的不同之处在于,启动命令时它无法重定向。它还用于读取密码,因为从控制台读取您可以控制是否回显正在键入的字符。
要了解有关此类的更多信息,请阅读 Unix 系统中的控制台和标准输入(这通常是 Unix 的事情,我不太确定它如何映射到 Windows 系统)。
最后,扫描仪可以读取任何输入:文件、流或控制台本身,因此它与控制台不同。