UML
类图有如下关系:继承(泛化)、实现、依赖、关联、聚合、组合。
设计模式--创建型:建造者模式
建造者模式:将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。
Android Ashmem 机制
Ashmem: Anonymous Shared Memory
是 Android
提供的一种共享内存的机制,它基于 mmap
系统调用,不同进程可以将同一段物理内存映射到各自的虚拟地址控制实现共享,因此进程间不需要再拷贝数据。
Java HashMap 简介
存储一个键值对(key-value
),根据键的 hashCode
值存储数据,大多数情况下可以直接定位到它的值,因而具有很快的访问速度,但遍历顺序却是不确定的。 HashMap
最多只允许一条记录的键为 null
,允许多条记录的值为 null
。HashMap
非线程安全,即任一时刻可以有多个线程同时写 HashMap
,可能会导致数据的不一致。如果需要满足线程安全,可以使用 ConcurrentHashMap
。
Java Socket NIO
Java NIO 基础
NIO: Non-blocking IO
,是指 jdk1.4
及以上版本里提供的 New IO
。NIO
弥补了原来的 I/O
的不足,它在标准 Java
代码中提供了高速的、面向块的 I/O
,所有数据都是用缓冲区处理的。
Java Socket 编程
Java I/O 流
流是一组有顺序的,有起点和终点的字节集合,是对数据传输的总称或抽象。即数据在两设备间的传输称为流,流的本质是数据传输,根据数据传输特性将流抽象为各种类,方便更直观的进行数据操作。Java
的 I/O
是建立在流(Stream
)之上的,输入流读取数据,输出流写入数据。流是同步的,也就是说当请求流读一段数据时,阻塞等待直到有数据。Java
还支持使用通道和缓冲区的非阻塞 I/O
(NIO
),暂不讨论。