Java I/O
Java I/O分类
- 磁盘操作:File
- 字节操作:InputStream 和 OutputStream
- 字符操作:Reader 和 Writer
- 对象操作:Serializable
- 网络操作:Socket
- 新的输入/输出:NIO
File可用于表示文件和目录的信息,但不表示文件内容
File可用于表示文件和目录的信息,但不表示文件内容
HashSet
getClass() 获取运行时对象的Class对象
hashCode() 获取对象的哈希码,在哈希表中被使用
toString() 输出 类名@实例的十六进制哈希码
clone() 返回当前对象的一份拷贝
equals() 比较对象是否等价
并发一致性问题
懒汉(线程不安全)
1 | public class Singleton { |
忽略握手过程中序列号和确认号的传输:发送的时候会随机生成一个序列号,另一段回复的时候需要回复确认号为收到的序列号加1,并且带上自己的序列号
初始序列号是用来给发送的数据包编号的,如果另一段发来了一个确认号,说明这个号之前的数据包都被接受了
三次握手建立连接
第一次握手:客户端发送一个SYN为1的数据包给服务端
第二次握手:发送一个SYN/ACK都为1的数据包给客户端
第三次握手:客户端发送一个ACK为1的数据包给服务端
可以两次握手吗?
Junit 单元测试学习