3.1单例(Singleton)模式
保证一个类仅有一个实例,并提供一个访问它的全局访问点。
3.2单例模式-概述
单件模式是关于怎样设计一个类,并使得该类只有一个实例的成熟模式,该模式的关键是将类的构造方法设置为private权限,并提供一个返回它的唯一实例的类方法。
3.3结构
包括一个角色:单件类(Singleton)
3.4使用
public class Moon{ private static Moon uniqueMoon; double radius; double distanceToEarth; private Moon(){ uniqueMoon=this; radius=1738; distanceToEarth=363300; } public static synchronized Moon getMoon(){ if(uniqueMoon==null){ uniqueMoon=new Moon(); } return uniqueMoon; } public String show(){ String s="月亮的半径是"+radius+"km,距地球是"+distanceToEarth+"km"; return s; } }
3.5单例模式-什么时候使用
- 必要条件
在一个系统中要求一个类只需要一个实例时才可以被用来作为单例模式,反过来说如果一个类需要多个实例化对象共存那么就不适合单例模式
回收站是单例模式的体现
3.6单例模式-优点
- 单件类的唯一实例由单件类本身来控制,所以可以很好地控制用户何时访问它。
- 节省内存资源
相关推荐
第3章 单例模式和工厂模式 第4章 异常 第5章 PHP 6中的新特性 第二部分 测试和文档编写 第6章 文档编写和编码规范 第7章 反射API 第8章 测试、部署和持续集成 第三部分 SPL(标准PHP库) 第9...
第一部分 OOP和模式 第1章 抽象类、接口和契约式编程 第2章 静态变量、成员和方法 第3章 单例模式和工厂模式 第4章 异常 第5章 PHP 6中的新特性 第二部分 测试和文档编写 第6章 文档编写和编码规范 第7章 反射API ...
” ——Amazon.com 目录第一部分 OOP和模式 第1章 抽象类、接口和契约式编程 第2章 静态变量、成员和方法 第3章 单例模式和工厂模式 第4章 异常 第5章 PHP 6中的新特性第二部分 测试和文档编写 第6章 ...
第1章-第3节(重载、this关键字、构造器、static、final、封装、单例模式).md
第3章 软件的可维护性和可复用性 第4章 开闭原则 第5章 专题 JAVA语言的接口 第6章 专题 抽象类 第7章 里氏代换原则 第8章 依赖倒转原则 第9章 接口隔离原则 第10章 合成、聚合复用原则 第11章 迪米特法则 第12章 ...
第3章单例模式(SINGLETON PATTERN):确保一个类只有一个实例,并提供一个全局访问点。单例模式常用于资源管理,如数据库连接或线程池,确保在整个应用程序中只有一个共享实体。 第4章多例模式(MULTITION PATTERN...
在Java中,实现单例模式主要有以下几种方式: 1. **饿汉式(静态常量)**:这是最简单的单例实现,它在类加载时就完成了初始化,所以是线程安全的。但是由于类加载时就创建了单例对象,即使没有被使用也会占用内存...
01_第1章_统一建模语言基础知识.ppt ...第3章_设计模式概述.ppt 第4章_简单工厂模式.ppt 第5章_工厂方法模式.ppt 第6章_抽象工厂模式.ppt 第7章_建造者模式.ppt 第8章_原型模式.ppt 第9章_单例模式.ppt
第3章 软件的可维护性与可复用性 第4章 “开-闭”原则 第5章 专题:Java语言的接口 第6章 专题:抽象类 第7章 里氏代换原则 第8章 依赖倒转原则 第9章 接口隔离原则 第10章 合成/聚合复用原则 第11章 迪米特法则 第...
#### 第3章 单例模式(Singleton Pattern) 单例模式是一种创建型设计模式,确保一个类只有一个实例,并提供一个全局访问点。 ##### 描述 单例模式的主要目的是控制对象的创建过程,确保在整个应用程序中只有一个...
第3章 外观模式 第4章 适配器模式(Adapter) 第5章 单例模式(Singleton) 第6章 工厂方法模式(Factory Method) 第7章 抽象工厂模式(Abstract Factory) 第8章 生成器模式(Builder) 第9章 原型模式...
第3章 外观模式 第4章 适配器模式(Adapter) 第5章 单例模式(Singleton) 第6章 工厂方法模式(Factory Method) 第7章 抽象工厂模式(Abstract Factory) 第8章 生成器模式(Builder) 第9章 原型模式...
第3章 外观模式 第4章 适配器模式(Adapter) 第5章 单例模式(Singleton) 第6章 工厂方法模式(Factory Method) 第7章 抽象工厂模式(Abstract Factory) 第8章 生成器模式(Builder) 第9章 原型模式...
第3章 外观模式 第4章 适配器模式(Adapter) 第5章 单例模式(Singleton) 第6章 工厂方法模式(Factory Method) 第7章 抽象工厂模式(Abstract Factory) 第8章 生成器模式(Builder) 第9章 原型...
第3章 外观模式 第4章 适配器模式(Adapter) 第5章 单例模式(Singleton) 第6章 工厂方法模式(Factory Method) 第7章 抽象工厂模式(Abstract Factory) 第8章 生成器模式(Builder) 第9章 原型模式...
第3章 外观模式 第4章 适配器模式(Adapter) 第5章 单例模式(Singleton) 第6章 工厂方法模式(Factory Method) 第7章 抽象工厂模式(Abstract Factory) 第8章 生成器模式(Builder) 第9章 原型模式...
第3章 外观模式 第4章 适配器模式(Adapter) 第5章 单例模式(Singleton) 第6章 工厂方法模式(Factory Method) 第7章 抽象工厂模式(Abstract Factory) 第8章 生成器模式(Builder) 第9章 原型...