Java网络编程:解读java.io与Socket概述
一、javaio之字节流
1.1 网络编程的本质是进程间的通信
比如说客户端浏览器进程想从服务器端接收不同的网页、文件等等,就需要想服务器发送请求,服务器端接收到请求就返回数据。这里便是两个进程之间数据的交换
1.2 通信的基础是IO模型
如果我们站在一个应用进程的角度来看,假设我们有个数据源,需要把数据源输入到应用进程里,对于应用来说这一串数据便是输入流,Java中的对象如果实现了Serializable()接口,便可以写入一个文件,再从一个进程中读取出来,再恢复为Java对象。如果从应用输出数据,对于应用便是输出流
1.3 java.io操作各种流
字符流:在流中处理字符,例如char中一个可读性字符可等于两个字节
字节流:在流中处理字节,最基本的程序操作单位
字符流中Reader跟Writer都是抽象类,如果处理的是CharArray是从Char数组中读取数据,处理的是String是从String中不停读取数据,CharArray跟String都是基础的
Java中还有更复杂的Reader跟Writerÿ