摘要:
基于java1.71.ArrayList 是基于数组实现的 通过源码 我们可以知道 ArrayList 提供了三种构造器用于实例化 /** * Constructs an empty list with the specified initial capacity. * * @param initi 阅读全文
摘要:
责任链模式(ChainOfResponsibilityPattern)属于 行为型模式的一种,将请求沿着一条链传递,直到该链上的某个对象处理它为止。概述 定义如下:一个请求有多个对象来处理,这些对象形成一条链,根据条件确定具体由谁来处理,如果当前对象不能处理则传递给该链中的下一个对象,直到有对象处理 阅读全文
摘要:
概述 观察者模式是一种使用率极高的模式,用于建立一种对象与对象之间的依赖关系,一个对象发生改变时将自动通知其他对象,其他对象将相应作出反应。在观察者模式中,发生改变的对象称为观察目标,而被通知的对象称为观察者,一个观察目标可以对应多个观察者,而且这些观察者之间可以没有任何相互联系,可以根据需要增加和 阅读全文
摘要:
Netty是一个高性能、异步事件驱动的NIO框架,提供了对TCP、UDP和文件传输的支持,作为一个异步NIO框架,Netty的所有IO操作都是异步非阻塞的,通过Future-Listener机制,用户可以方便的主动获取或者通过通知机制获得IO操作结果。 作为当前最流行的NIO框架,Netty在互联网 阅读全文
摘要:
1. 模式的定义 假设现在要实现一个简化的报价管理,实现如下的功能: 1. 对于普通客户或者新客户报全价 2. 对于老客户报的价格,统一折扣5% 3. 对于大客户报的价格,统一折扣10% 对不同的人员报不同的价格 到底该如何实现,才能够让价格类中的计算报价的算法,能很容易地实现可维护,可扩展,又能动 阅读全文
摘要:
参考博客地址:https://mp.weixin.qq.com/s/IzjmCZkGS5vPKKoY6X9j5Q 单例模式的定义是确保某个类在任何情况下都只有一个实例,并且需要提供一个全局的访问点供调用者访问该实例的一种模式。要确保任何情况下都只有一个实例,则我们需要把创建对象的权限“收回来”或者进 阅读全文
摘要:
Java NIO 由以下几个核心部分组成: ChannelsBuffersSelectors Channel 和 Buffer 基本上,所有的 IO 在NIO 中都从一个Channel 开始。Channel 有点象流。 数据可以从Channel读到Buffer中,也可以从Buffer 写到Chann 阅读全文
摘要:
Java NIO的通道channel 既可以从通道中读取数据,又可以写数据到通道。通道可以异步地读写。通道中的数据总是要先读到一个Buffer(缓冲区),或者总是要从一个Buffer(缓冲区)中写入。如下图所示: Channel的实现 Java NIO中最重要的通道的实现: FileChannelD 阅读全文
摘要:
Java NIO中的DatagramChannel是一个能收发UDP包的通道。因为UDP是无连接的网络协议,所以不能像其它通道那样读取和写入。它发送和接收的是数据包。 打开 DatagramChannel,绑定9999端口 DatagramChannel channel = DatagramChan 阅读全文
摘要:
Java NIO中的SocketChannel是一个连接到TCP网络套接字的通道。可以通过以下2种方式创建SocketChannel: 打开一个SocketChannel并连接到互联网上的某台服务器。SocketChannel channel = SocketChannel.open();chann 阅读全文