首先介绍四个方法:readLine(),flush(),close(),println()方法
readLine()方法:实质上readLine()是一个阻塞方法,API上的定义:读取一个文本行。通过下列字符之一即可认为某行已终止:换行 ('\n')、回车 ('\r') 或回车后直接跟着换行。也就是说,如果,readLine()没有读取到'\r','\n'换行符,则会一直阻塞,等待换行符,否则就无法结束读取。
flush()方法:查看源码的解释:flush()这个方法在PrintStream,PrintWriter,OutputStream的子类都有的成员方法,在OutputStream类的构造器中没有指定autoflush,而PrintWriter和PrintStream类中有PrintStream(OutputStream op,boolean autoflush),而没有指定autoflush()默认值是false;也就是无法自动将数据从缓冲区刷出,这也就是为什么在Socket中使用输出流的情况下一般都需要手动刷新。
flush()方法
* Flushes the stream. If the stream has saved any characters from the
* various write() methods in a buffer, write them immediately to their
* intended destination. Then, if that destination is another character or
* byte stream, flush it. Thus