首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > Ruby Rails >

ruby设计默许-单例模式(一)

2013-04-07 
ruby设计默认-单例模式(一)要点? ? ? 显然单例模式的要点有三个;一是某个类只能有一个实例;二是它必须自行

ruby设计默认-单例模式(一)
要点

? ? ? 显然单例模式的要点有三个;一是某个类只能有一个实例;二是它必须自行创建这个实例;三是它必须自行向整个系统提供这个实例。

? ? ? 从具体实现角度来说,就是以下三点:一是单例模式的类只提供私有的构造函数,二是类定义中含有一个该类的静态私有对象,三是该类提供了

简介

? ? ? 单例模式是设计模式中最简单的形式之一。这一模式的目的是使得类的一个对象成为系统中的唯一实例。要实现这一点,可以从客户端对其进行实例化开始。因此需要用一种只允许生成对象类的唯一实例的机制,“阻止”所有想要生成对象的访问。使用工厂方法来限制实例化过程。这个方法应该是静态方法(类方法),因为让类的实例去生成另一个唯一实例毫无意义。

#其他的单例模式#(一)使用全局变量,尽量不要使用全局变量,因为全局变量是程序紧密的耦合在一起#其实单例模式和全局变量的作用是一样的,$logger = SimpleLogger.new#(二)使用类作为单例class SimpleLogger    WARNING = 2  INFO = 3  @@log = File.open("log.txt", "w")  @@level = WARNING  def self.warning(msg)    @@log.puts(msg) if @@level >= WARNING    @@log.flush  end  def self.level    @@level  end  endSimpleLogger.level = SimpleLogger::INFO

?

热点排行