企业门户网站建设渠道网站积分商城该怎么建立
企业门户网站建设渠道,网站积分商城该怎么建立,想建个网站找谁,中国建筑第八工程局官网创建型模式#xff0c;共五种#xff1a;工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。 1.工厂方法模式#xff1a;#xff08;常用#xff0c;需要掌握#xff09;
定义#xff1a;定义了一个创建对象的抽象方法#xff0c;由子类决定要实例化的类。…创建型模式共五种工厂方法模式、抽象工厂模式、单例模式、建造者模式、原型模式。 1.工厂方法模式常用需要掌握
定义定义了一个创建对象的抽象方法由子类决定要实例化的类。工厂方法模式将对象的实例化推迟到子类。 本质将对象的实例化封装在工厂类中将对象的创建与使用分离。也就是说是用工厂类的方法来代替 new 操作的。 工厂模式的优点
降低耦合度 对象的创建与使用分离使用者无需关心创建对象的细节符合单一职责原则。当对象的创建过程很复杂时这个优点会更加突出。使代码更简洁易维护 高质量的代码必须保证单个方法不要太长因此要尽量将方法进行封装易于维护。 工厂模式有如下几种写法 简单工厂模式、工厂方法模式、抽象工厂模式。
1.1 简单工厂模式
定义定义了一个创建对象的类由这个类来封装实例化对象的行为。
1.2 工厂方法模式
定义定义了一个创建对象的抽象方法由子类决定要实例化的类。工厂方法模式将对象的实例化推迟到子类。
1.3 抽象工厂模式
定义定义了一个接口用于创建相关或有依赖关系的对象族而无需明确指定具体类。
抽象工厂用来生产其他工厂的工厂。 区分
简单工厂 用来生产同一等级结构中的任意产品。不支持拓展增加产品
工厂方法 用来生产同一等级结构中的固定产品。支持拓展增加产品
抽象工厂 用来生产不同产品族的全部产品。 3 单例模式常用需要掌握
定义确保一个类最多只有一个实例并提供一个全局访问点
单例模式可以分为两种预加载和懒加载 常见5种实现方式方式懒汉式饿汉式静态内部类双重校验锁枚举
1懒汉模式就是它很懒直到用到的时候才会去创建对象而不是一开始就创建对象。
2饿汉模式就是它很饿想快点创建对象此模式在类加载时就立即创建对象。
3静态内部类的单例写法是在类内部有一个静态内部类它持有外部类的实例。
4双重校验锁volatile作用保证有序性、可见性。
第一次校验也就是第一个ifsingleton null
由于单例模式只要一次创建实例即可
第二次校验也就是第二个ifsingleton null
多线程场景下这个校验是防止二次创建实例
5枚举
支持多线程
可保证只有一个实例。这与枚举类的实现有关。
支持防止反序列化和防止反射破坏单例 4.建造者模式常用需要掌握
含义将一个对象的构建过程与这个对象分离使得可以很方便的用构建过程创建不同属性的对象。
定义封装一个复杂对象构造过程并允许按步骤构造。
定义解释 我们可以将建造者模式理解为假设我们有一个对象需要建立这个对象是由多个组件Component组合而成每个组件的建立都比较复杂但运用组件来建立所需的对象非常简单所以我们就可以将构建复杂组件的步骤与运用组件构建对象分离使用builder模式可以建立。
安卓源码常见Dialogue的Builder创建方式,Retrofit的Builder创建方式 5 原型模式不常用了解即可
定义通过复制现有实例来创建新的实例无需知道相应类的信息。
简单地理解其实就是当需要创建一个指定的对象时我们刚好有一个这样的对象但是又不能直接使用我会clone一个一毛一样的新对象来使用基本上这就是原型模式。关键字Clone。 5.1 深拷贝和浅拷贝
浅复制将一个对象复制后基本数据类型的变量都会重新创建而引用类型指向的还是原对象所指向的。
深复制将一个对象复制后不论是基本数据类型还有引用类型都是重新创建的。简单来说就是深复制进行了完全彻底的复制而浅复制不彻底。clone明显是深复制clone出来的对象是是不能去影响原型对象的 适用场景创建对象非常耗费资源适用clone方式实现复制对象
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/bicheng/87245.shtml
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!