概述
- 只能有一个实例
- 必须自己创建自己的唯一的实例
- 必须给所有其他对象提供这一实例
类图
举例
延迟创建单例,当调用方法getInstance时,才会创建单例。在第一次调用时,instance实例为null,则创建实例;再次调用时,直接返回已经创建好的实例缓存。注意,方法要加synchronized关键字,避免多线程同时访问方法时创建多个不同的实例,从而违反单例规则。
急切创建单例,在类加载时创建单例。
应用
现实中的应用Runtime类,Runtime.getRuntime()获得Runtime单例,返回当前应用对应的Runtime对象,运行应用程序在运行时访问外部系统环境接口。
閱讀更多 有趣的代碼 的文章