美文网首页
组合和享元模式

组合和享元模式

作者: NazgulSun | 来源:发表于2019-03-04 19:32 被阅读0次

今天两个模式都很简单,因为都是平时用的很多的模式。

第一个时组合模式,组合模式的精髓就是 对于  一个 对象或者多个对象组成的组合,对于client来说,他的行为时一致的。

组合模式用的最多的例子,就是构建树形结构,树形结构有 两种类型的节点, leaf节点 和 非 leaf节点,姑且叫Container节点。

一个container可以包含多个leaf作为其 child, 对外,我们可以按照相同的逻辑来操作 这两类节点,而不用区分时leaf还时非leaf。

在Unix中,最只直观的 例子是File 和Directory , Directory 可以包含子 File和子 Directory, 对于用户而已,可以在这两类对象上都执行相同的command,比如ls,cp等等。

在java中,大量使用组合模式的是 java.swing的UI编程,各类组件都是继承自component,不管你是button,Dialog,Panel 等都可以被统一对待。

比如对于任何一个component 都可以调用其show,hide方法,这就是 个体和组合的行为一致性。

享元模式,其实就是对象复用模式,我们看到的各类连接池都可以看成是该类模式。用户获取一个连接时,会从池子里拿一个已经创建好的,

而不是重新创建,可以避免大量的开销。

java中的string,用的就是享元模式,假设你创建10000个 “abc”,那么其实内存的常量区只有一个 abc。

相关文章

  • 组合和享元模式

    今天两个模式都很简单,因为都是平时用的很多的模式。 第一个时组合模式,组合模式的精髓就是 对于 一个 对象或者多个...

  • 享元模式|组合模式

    享元模式 概念层次,共享元素。 共享的都是固定不变的,比如26个英文字母,权限验证授权中的,安全对象,和,权限。 ...

  • 设计模式之结构型模式(下)

    上篇已经介绍了适配器模式、桥接模式和组合模式,这篇将介绍装饰者模式、外观模式、享元模式和代理模式。 装饰者(Dec...

  • 设计模式-结构型模式

    结构类模式包括适配器模式、桥接模式、组合模式、装饰模式、门面模式、享元模式和代理模式。 为什么叫结构类模式呢?因为...

  • 面试 (七) : 其他篇 -- 设计模式

    常用的设计模式 • 单例模式 • 组合模式 • 观察者模式 • 代理模式 • 享元模式 • 工厂方法模式 • 抽象...

  • 设计模式--享元模式

    目录 本文的结构如下: 引言 什么是享元模式 模式的结构 典型代码 代码示例 单纯享元模式和复合享元模式 模式扩展...

  • Java中的23种设计模式(二)

    (适配器模式、装饰模式、代理模式、外观模式、桥接模式、组合模式、享元模式)原文作者:终点 出处:Java之美[...

  • iOS面试

    常用的设计模式 •单例模式 •组合模式 •观察者模式 •代理模式 •享元模式 •工厂方法模式 •抽象工厂模式 #M...

  • 二十一、享元模式

    1. 何为享元模式 定义:通过共享已存在的对象,减少创建对象内存开销的设计模式被称为享元模式。 享元模式和单例模式...

  • 模式总览

    创建型模式 单例模式、工厂模式 、原型模式 结构型模式 适配器模式、装饰者模式、组合模式、享元模式、代理模式; ...

网友评论

      本文标题:组合和享元模式

      本文链接:https://www.haomeiwen.com/subject/wthwuqtx.html