るりまサーチ

最速Rubyリファレンスマニュアル検索!
11件ヒット [1-11件を表示] (0.107秒)
トップページ > クエリ:nil[x] > クエリ:DATA[x] > クエリ:to_a[x] > クエリ:メソッド呼び出し(super・ブロック付き・yield)[x]

別のキーワード

  1. メソッド呼び出し(super・ブロック付き・yield)
  2. メソッド呼び出し(super・ブロック付き・yield) proc
  3. メソッド呼び出し(super・ブロック付き・yield) method
  4. メソッド呼び出し(super・ブロック付き・yield) localjumperror

検索結果

メソッド呼び出し(super・ブロック付き・yield) (15075.0)

メソッド呼び出し(super・ブロック付き・yield) * super * block * yield * block_arg * numbered_parameters * call_method

...メソッド呼び出し(super・ブロック付き・yield)
* super
* block
* yield
* block_arg
* numbered_parameters
* call_method

//emlist[例][ruby]{
foo.bar()
foo.bar
bar()
print "hello world\n"
print
Class.new
Class::new
//}

文法:

[式 `.'] 識別子 [`(' [[`*']...
...なっています。


引数の直前に * がついている場合、その引数の値が展開されて
渡されます。展開はメソッド to_a を経由して行なわれます。つまり:

//emlist[][ruby]{
foo(1,*[2,3,4])
foo(1,*[])
foo(1,*[2,3,4],5)
foo(1,*[2,3,4],5,*[6])
//}

は、...
...にオーバーライドしたメソッドを呼び出すには
super() と括弧を明示します。

//emlist[例][ruby]{
class Foo
def foo(arg=nil)
p arg
end
end

class Bar < Foo
def foo(arg)
super(5) # 5 を引数にして呼び出す
super(arg) # 5 を引数にし...
...メソッドを呼びだそうとすると、レシーバが nil の場合は
以下のように働きます。

* 引数の評価が行なわれない
* メソッド呼び出しが行われない
* nil を返す

レシーバが nil でない場合は通常のメソッド呼び出しが行わ...