05 2022 档案

摘要:Synchronized Synchronized 是通过对象内部的一个叫做监视器锁(monitor)来实现的,监视器锁本质又是依赖于底层的操作系统的 Mutex Lock(互斥锁)来实现的。而操作系统实现线程之间的切换需要从用户态转换到核心态,这个成本非常高,状态之间的转换需要相对比较长的时间,这 阅读全文
posted @ 2022-05-28 01:40 亢🐉有悔 阅读(270) 评论(0) 推荐(0) 编辑
摘要:关于责任链模式,其有两种形式,一种是通过外部调用的方式对链的各个节点调用进行控制,从而进行链的各个节点之间的切换;另一种是链的每个节点自由控制是否继续往下传递链的进度,这种比较典型的使用方式就是Netty中的责任链模式。 定义 避免请求发送者与接收者耦合在一起,让多个对象都有可能接收请求,将这些对象 阅读全文
posted @ 2022-05-04 10:03 亢🐉有悔 阅读(37) 评论(0) 推荐(0) 编辑
摘要:定义 将一个接口转换为客户端所期待的接口,从而使两个接口不兼容的类可以在一起工作 适配器模式还有个别名叫:Wrapper(包装器),顾名思义就是将目标类用一个新类包装一下,相当于在客户端与目标类直接加了一层。IT世界有句俗语:没有什么问题是加一层不能解决的 适配器模式分为类结构型模式和对象结构型模式 阅读全文
posted @ 2022-05-02 20:23 亢🐉有悔 阅读(31) 评论(0) 推荐(0) 编辑
摘要:使用场景 这个设计模式一般在最初写代码的时候基本上是不会预先想到的,都是在后期不断重构的过程中被提炼出来的。简单来说就是:当你发现你写了两个或者多个几乎一毛一样的类,只是有些方法的实现方式不一致的时候,你就要停下来想想了,如果你又发现在使用这些类的地方调用方法顺序都一样,不要犹豫请使用模板方法模式重 阅读全文
posted @ 2022-05-02 20:18 亢🐉有悔 阅读(43) 评论(0) 推荐(0) 编辑
摘要:定义 策略模式定义了一系列的算法,并将每一个算法封装起来,使他们可以相互替换 使用场景 当你写代码的时候发现一个操作有好多种实现方法,而你需要根据不同的情况使用if-else等分支结构来确定使用哪种实现方式的时候,想一想这个模式。 普通实现 如果我们正常写代码,平时也应该这样,首先保证把功能正确的实 阅读全文
posted @ 2022-05-02 17:19 亢🐉有悔 阅读(35) 评论(0) 推荐(0) 编辑
摘要:定义 装饰模式是在不必改变原类和使用继承的情况下,动态地扩展一个对象的功能。它是通过创建一个包装对象,也就是装饰来包裹真实的对象。 使用场景 需要在运行时动态的给一个对象增加额外的职责时候 需要给一个现有的类增加职责,但是又不想通过继承的方式来实现的时候(应该优先使用组合而非继承),或者通过继承的方 阅读全文
posted @ 2022-05-02 15:18 亢🐉有悔 阅读(37) 评论(0) 推荐(0) 编辑
摘要:背景: 当一个类的构造函数参数个数超过4个,而且这些参数有些是可选的参数,考虑使用构造者模式。 当一个类的构造函数参数超过4个,而且这些参数有些是可选的时,我们通常有两种办法来构建它的对象。 例如我们现在有如下一个类计算机类Computer,其中cpu与ram是必填参数,而其他3个是可选参数,那么我 阅读全文
posted @ 2022-05-02 03:40 亢🐉有悔 阅读(29) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示