在Ruby中使用Singleton模式
来源:互联网 发布:cad编程语言 编辑:程序博客网 时间:2024/05/16 03:03
关于单例模式的概念,这里就不多说了。
Ruby如何实现,先看下面的代码:
- class MyLogger
- private_class_method :new
- @@logger = nil
- def MyLogger.create
- @@logger = new unless @@logger
- @@logger
- end
- end
- log1 = MyLogger.create
- log2 = MyLogger.create
- if log1 == log2
- puts "same"
- else
- puts "different"
- end
运行后输出:same
可以作如下的测试:
- class MyLogger
- #private_class_method :new
- @@logger = nil
- def MyLogger.create
- @@logger = new unless @@logger
- @@logger
- end
- end
- #log1 = MyLogger.create
- #log2 = MyLogger.create
- log1 = MyLogger.new
- log2 = MyLogger.new
- if log1 == log2
- puts "same"
- else
- puts "different"
- end
输出:different
- 在Ruby中使用Singleton模式
- 在Java中应用设计模式--Singleton
- 在Java中应用设计模式--Singleton
- 在Java中应用设计模式--Singleton
- 在Java中应用设计模式--Singleton
- 在Java中应用设计模式--Singleton
- 在AX中实现Singleton模式
- 在 Java 中应用设计模式 -- Singleton
- 在 Java 中应用设计模式 -- Singleton
- 在 Java 中应用设计模式 -- Singleton
- 在singleton中对synchronized的使用
- singleton 模式使用问题
- 在Java中应用设计模式之Singleton
- 在 Java 中应用设计模式 -- Singleton [转载】
- 在Ruby on Rails中使用FCKeditor
- 使用REXML在ruby中处理xml
- 在Ruby中使用flash传递消息
- 在ruby 中如何使用try
- ExtJS实战(2)-hibernate
- c#多线程 Invoke方法的使用
- 取得当前的文件之前的URL地址.
- ExtJS实战系列-前言
- 同事的评价:你的思维跳跃性太大!
- 在Ruby中使用Singleton模式
- ExtJS实战(1)-准备工作和界面赏析
- ExtJS+DWR+Spring+Hibernate开发HRMS(5)
- 表单验证类 Validator
- Rootkits:有可能清除它们吗?
- ExtJS+DWR+Spring+Hibernate开发HRMS(4)
- ExtJS+DWR+Spring+Hibernate开发HRMS(3)
- ExtJS+DWR+Spring+Hibernate开发HRMS(2)
- About FileUpload Control - CheckFileSize