网络传输时既有管道流(PipedInputStream 与 PipedOutStream)又有序列化对象反序列化对象(ObjectOutputStream与 ObjectInputStream)
农村四月闲人少,勤学苦攻把名扬。这篇文章主要讲述网络传输时既有管道流(PipedInputStream 与 PipedOutStream)又有序列化对象反序列化对象(ObjectOutputStream与 ObjectInputStream)相关的知识,希望能为你提供帮助。
网络传输时既有管道流(PipedInputStream 与 PipedOutStream)又有序列化对象、反序列化对象(ObjectOutputStream与 ObjectInputStream),还有在集合中、流中都有的身影的Properties究竟是何方神物?我们该怎么选择呢?
【网络传输时既有管道流(PipedInputStream 与 PipedOutStream)又有序列化对象反序列化对象(ObjectOutputStream与 ObjectInputStream)】
?管道流:多线程之间的流的读与写----字节层面上
[学多线程时的浪漫相遇管道流---传输字节流]
class PipedInputStream extends InputStream
管道输入流应连接到管道输出流;
管道输入流然后提供写入管道输出流的任何数据字节。 典型地,数据被从一个读??PipedInputStream?
?对象由一个线程并且数据被写入到对应的??PipedOutputStream?
?通过一些其它线程。 不建议尝试从单个线程使用这两个对象,因为它可能会使线程死锁。 管道输入流包含一个缓冲区,在读取操作中将读取操作与限制内的操作相分离的管道被认为是broken如果正在提供的数据字节到连接的管道输出流中的线程不再存活。
?序列化、反序列化对象
[学IO流时的浪漫相遇序列化、反序列化对象---传输对象流]
Class ObjectInputStream
extends InputStream implements ObjectInput, ObjectStreamConstants : 将字节传输转化成对象传输
?反序列化对象:ObjectInputStream用于恢复先前序列化的对象。 其他用途包括使用套接字流在主机之间传递对象,或者在远程通信系统中进行封送和解组参数。
?属性集合:Properties
[学集合时的浪漫相遇Properties知其结构继承hashtable,设置构造方法规定了键值对为字符串类型;
学IO流时的浪漫相遇Properties想起来其内部还有两个超级棒的方法save(流对象)、load(流对象)-----方便使用流的操作]
class Properties extends Hashtable
结构上继承:集合Hastable 【键值对的形式存取结构,且设置通过构造方法设置属性名(key)、属性值(value)都为字符串类型】
String getProperty(String key) 通过属性列表中指定的键获取属性。
构造方法:
public synchronized Object setProperty(String key, String value)
return put(key, value);
内部定义了与流有关的方法:load()、save() 方法
load(InputStream inStream)、load(Reader reader)、save(OutputStream out, String comments)
总结:Properties属性集合:特点1:结构上继承了Hashtable的键值对结构,通过设置构造方法的设置规定,
得到特点2:键值对都是字符串类型,即属性名、属性值都是字符串类型;
特点3:内部定义了方法:save(流对象)、load(流对象),所以与流操作有关。
特点4:没有泛型!
作者:一乐乐?
推荐阅读
- win10插入耳机后有电流声怎么办电脑出现回声怎么办
- 安装选择msi格式还是zip(windows下Nodejs zip版下载安装及环境变量配置)
- github项目托管方式(看项目自身是否自带有 .git)
- 安装工具小日记
- 虚拟机VMware 安装centos常规配置共享文件等
- 卸载应用后,删除安装根目录下的所有文件,提示已在另一进程打开,在资源管理器进程中找不到该程序的解决
- linux下面/usr/local和opt目录有何区别
- github或者官网上找项目的开发压缩包源码包jar包
- 安装一条龙,妈妈再也不用担心我不会安装啦