桥接模式:将实现和抽象放在两个不同的类层次中,使它们可以独立改变。实现和抽象解耦,不再永久绑定。 缺点:增加了复杂度。 生成器模式:将一个复杂的创建过程封装起来,允许对象通过...
代理模式:为另一个对象提供一个替身或者占位符来访问这个对象。以便控制对对象的访问。
迭代器模式:提供一种方法顺序访问一个聚合对象中的元素,而不暴露其内部的结构。 组合模式:允许将对象组成树形结构来表现“整体/部分”的层次结构。组合能让客户以一致的方法处理对象...
模板方法模式:在一个方法中定义一个算法的骨架,而将一些具体步骤迟到到子类中。使得子类可以不改变算法结构的情况下,重新定义算法中的某些步骤。
适配器模式:将一个类的接口转换成客户期望的另一个接口;让原本不兼容的类可以兼容 外观模式:提供了一个统一的接口,用来访问子系统的一群接口。外观定义了一个高层接口,让子系统更容...
命令模式:将请求封装成对象,让你使用不同的请求、队列,或者日志请求来参数化其他对象。命令模式也可支持撤消操作; 要点: 1、将发出请求的对象和执行请求的对象解耦 2、解耦的两...
动态地将责任附加到对象上,扩展功能,装饰者有别于继承的另一种选择
在对象之间定义一对多的依赖,这样一来,当一个对象状态改变时,依赖它的对象都会收到通知,并自动更新。以松耦方式在一系列对象之间沟通状态
定义算法族,分别封装起来,让它们可以互相替换,让算法的变化独立于使用算法的客户
状态模式:允许对象在内部状态改变时改变它的行为,对象看起来好像修改了它的类。允许对象随着状态改变而改变行为。 策略模式:用行为或者算法来配置对象。
单例模式:确保一个类只有一个实例,并提供全局访问点; 实现方式:私有构造器、静态方法、静态变量 风险点:多个类加载器,单例模式失效产生多个实例 1、双重加锁 2、急切创建实例...
抽象工厂模式:提供一个接口,用于创建相关或依赖对象的家族,而不需要明确指定具体类; 工厂方法模式:定义了一个创建对象的接口,由子类要实例化的类是哪一个。工厂方法让类把实例化推...
1、分类 创建型:Singleton,Builder,Prototype,Abstract Factory,Factory Method 行为型:Template Metho...
1、用静态工厂方法代替构造器 2、遇到多个构造器参数时考虑用构建器 3、用私有构造器或者枚举类型强化Singleton属性 4、通过私有强化不可实例化的能力 5、避免创建不必...
第11章:持有对象 直接总结 1、数组将数字与对象关联起来 2、Collection保存单一元素,Map保存相关联的键值对,自动调整尺寸 3、各种Queue以及栈的行为,由L...
第7章:复用类 组合:将对象引用置于新类中 继承: 代理:将成员对象置于所要构造的类中,在新类中暴露该成员对象的所有方法 第10章:内部类 在一个方法里或者任意的作用域内(类...
第1章:对象导论 没啥说的 第2章:一切都是对象 存储到什么地方: 1、寄存器:处理器内部,存储最快 2、堆栈(栈):RAM随机访问存储器,压栈、出栈,存放对象引用 3、堆:...
ClassLoaderFactory 内部类Repository DIR:表示整个目录下的资源,包括所有Class、Jar包及其他类型资源; GLOB:所有Jar资源; JA...
1、启动类加载器:Bootstrap ClassLoader :加载对象是java核心库,把一些核心的类加载进jvm中,使用原生C/C++实现,所有类的加载器的父加载器。无法...