instance method Module#private

private() -> nil[permalink][rdoc][edit]
private(name) -> String | Symbol
private(*name) -> Array
private(names) -> Array

メソッドを private に設定します。

引数なしのときは今後このクラスまたはモジュール定義内で新規に定義されるメソッドを関数形式でだけ呼び出せるように(private)設定します。

引数が与えられた時には引数によって指定されたメソッドを private に設定します。

可視性については クラス/メソッドの定義/呼び出し制限 を参照して下さい。

[PARAM] name:
0 個以上の String または Symbol を指定します。
[PARAM] names:
0 個以上の String または SymbolArray で指定します。
[EXCEPTION] NameError:
存在しないメソッド名を指定した場合に発生します。


class Foo
  def foo1() 1 end      # デフォルトでは public
  private               # 可視性を private に変更
  def foo2() 2 end      # foo2 は private メソッド
end

foo = Foo.new
p foo.foo1          # => 1
p foo.foo2          # => private method `foo2' called for #<Foo:0x401b7628> (NoMethodError)