Ruby 2.4.0 リファレンスマニュアル > ライブラリ一覧 > singletonライブラリ > Singletonモジュール
クラス・モジュールの継承リスト: Singleton
Singleton パターンを提供するモジュールです。
Mix-in により singleton パターンを提供します。
Singleton モジュールを include することにより、クラスは高々ひとつのインスタンスしか持たないことが保証されます。
Singleton を Mix-in したクラスのクラスメソッド instance はその唯一のインスタンスを返します。
new は private メソッドに移され、外部から呼び出そうとするとエラーになります。
require 'singleton' class SomeSingletonClass include Singleton #.... end a = SomeSingletonClass.instance b = SomeSingletonClass.instance # a and b are same object p [a,b] # => [#<SomeSingletonClass:0x0000562e6e18ddd0>, #<SomeSingletonClass:0x0000562e6e18ddd0>] a = SomeSingletonClass.new # => NoMethodError (private method `new' called for SomeSingletonClass:Class)
定義 | 説明 | |
---|---|---|
instance -> object
|
そのクラスの唯一のインスタンスを返します。最初に呼ばれたときはそのインスタンスを生成します。 |
定義 | 説明 | |
---|---|---|
clone
|
@raise TypeError このメソッドを呼び出した場合に発生します。 |
|
dup
|
@raise TypeError このメソッドを呼び出した場合に発生します。 |