Java 我正在创建bufferedReader的对象,但我没有';I don’我不知道这句话中第二个新词是什么意思:

Java 我正在创建bufferedReader的对象,但我没有';I don’我不知道这句话中第二个新词是什么意思:,java,Java,我不知道这句话中的第二个新词是什么意思请有人帮我解释一下 BufferedReader br = new BufferedReader(new InputStreamReader(System.in); 您正在创建一个BufferedReader。这个特定的类有一个特定的函数,该函数在其输入上提供一个缓冲区,以便您可以在所需的块(行,…)中检索它。但是,它不能直接将文件或任何其他内容作为输入,原因很简单:避免重复 想象一下你想要一个不同类型的读者。如果BufferedReader也处理文件的直

我不知道这句话中的第二个新词是什么意思请有人帮我解释一下

BufferedReader br = new BufferedReader(new InputStreamReader(System.in);

您正在创建一个
BufferedReader
。这个特定的类有一个特定的函数,该函数在其输入上提供一个缓冲区,以便您可以在所需的块(行,…)中检索它。但是,它不能直接将文件或任何其他内容作为输入,原因很简单:避免重复

想象一下你想要一个不同类型的读者。如果BufferedReader也处理文件的直接读取等,那么您必须在新类中复制所有这些功能。所以,相反,您可以说BufferedReader接受一个对象,该对象通过其接口的约定,以特定格式向其提供数据。这样,BufferedReader就不需要关心从何处读取,它只需要完成自己的工作

这样做的一个副作用是,您因此需要使用不同的对象,在本例中是
InputStreamReader
的instace,它处理实际从
System.in
检索数据的操作