るりまサーチ

最速Rubyリファレンスマニュアル検索!
646件ヒット [101-200件を表示] (0.009秒)
トップページ > クラス:Object[x]

ライブラリ

キーワード

検索結果

<< < 1 2 3 4 ... > >>

Object#eql?(other) -> bool (1.0)

オブジェクトと other が等しければ真を返します。Hash で二つのキー が等しいかどうかを判定するのに使われます。

...時には Object#hash メソッ
ドも再定義しなければなりません。

@param other 比較するオブジェクトです。

p("foo".eql?("bar")) #=> false
p("foo".eql?("foo")) #=> true

p(4.eql?(4)) #=> true
p(4.eql?(4.0)) #=> false

@see Object#hash,Object#equal?,Object#==...

Object#equal?(other) -> bool (1.0)

other が self 自身の時、真を返します。

...Object#object_idが一致する
かどうかを調べます。

@param other 比較するオブジェクトです。

p("foo".equal?("bar")) #=> false
p("foo".equal?("foo")) #=> false

p(4.equal?(4)) #=> true
p(4.equal?(4.0)) #=> false

p(:foo.equal? :foo) #=> true

@see Object#object_id...
...,Object#==,Object#eql?,Symbol...

Object#extend(*modules) -> self (1.0)

引数で指定したモジュールのインスタンスメソッドを self の特異 メソッドとして追加します。

...turn self を返します。

module Foo
def a
'ok Foo'
end
end

module Bar
def b
'ok Bar'
end
end

obj = Object.new
obj.extend Foo, Bar
p obj.a #=> "ok Foo"
p obj.b #=> "ok Bar"

class Klass
include Foo
extend Bar
end

p Klass.new.a...
...きます。
ただしその場合、フック用のメソッド
が Module#extended ではなく Module#included になるという違いがあります。

# obj.extend Foo, Bar とほぼ同じ
class << obj
include Foo, Bar
end

@see Module#extend_object,Module#include,Module#extended...

Object#freeze -> self (1.0)

オブジェクトを凍結(内容の変更を禁止)します。

...=> "bar"

a2 = "foo".freeze
a2.replace("bar")# can't modify frozen string (RuntimeError)

凍結を解除することはできませんが、Object#dup を使えばほぼ同じ内容の凍結されていない
オブジェクトを得ることはできます。

a = [1].freeze
p a.frozen?...
...#=> true

a[0] = "foo"
p a # can't modify frozen array (RuntimeError)

b = a.dup
p b #=> [1]
p b.frozen? #=> false

b[0] = "foo"
p b #=> ["foo"]

@see Object#frozen?,Object#dup,Kernel.#trace_var...

Object#frozen? -> bool (1.0)

オブジェクトが凍結(内容の変更を禁止)されているときに真を返します。

...を禁止)されているときに真を返します。

obj = "someone"
p obj.frozen? #=> false
obj.freeze
p obj.frozen? #=> true

@see Object#freeze...

絞り込み条件を変える

Object#hash -> Integer (1.0)

オブジェクトのハッシュ値を返します。Hash クラスでオブジェク トを格納するのに用いられています。

...トのハッシュ値を返します。Hash クラスでオブジェク
トを格納するのに用いられています。

メソッド hash は Object#eql? と組み合わせて Hash クラスで利用されます。その際

A.eql?(B) ならば A.hash == B.hash

の関係を必ず満たして...
...ればいけません。eql? を再定義した時には必ずこちらも合わせ
て再定義してください。

デフォルトでは、Object#object_id と同じ値を返します。
ただし、Fixnum, Symbol, String だけは組込みのハッ
シュ関数が使用されます(これを変...
...Fixnumに収まらない場合は切り捨てられます。

p self.hash #=> 21658870
p 0.hash #=> 1
p 0.0.hash #=> 0
p nil.hash #=> 4

p "ruby".hash #=> -241670986
p "ruby".hash #=> -241670986
p :ruby.hash #=> 103538
p :ruby.hash #=> 103538

@see Object#eql?,BasicObject#__id__...

Object#initialize(*args, &block) -> object (1.0)

ユーザ定義クラスのオブジェクト初期化メソッド。

ユーザ定義クラスのオブジェクト初期化メソッド。

このメソッドは Class#new から新しく生成されたオブ
ジェクトの初期化のために呼び出されます。他の言語のコンストラクタに相当します。
デフォルトの動作ではなにもしません。

initialize には
Class#new に与えられた引数がそのまま渡されます。

サブクラスではこのメソッドを必要に応じて再定義されること
が期待されています。

initialize という名前のメソッドは自動的に private に設定され
ます。

@param args 初期化時の引数です。
@param block 初期化時のブロック引数です。必...

Object#initialize_copy(obj) -> object (1.0)

(拡張ライブラリによる) ユーザ定義クラスのオブジェクトコピーの初期化メソッド。

...は self を obj の内容で置き換えます。ただ
し、self のインスタンス変数や特異メソッドは変化しません。
Object
#clone, Object#dupの内部で使われています。

initialize_copy は、Ruby インタプリタが知り得ない情報をコピーするた
めに...
...alize_copy でコピーするよう定義しておくことで、dup や clone
を再定義する必要がなくなります。

デフォルトの Object#initialize_copy は、 freeze チェックおよび型のチェックを行い self
を返すだけのメソッドです。

initialize_copy と...
...Error レシーバが freeze されているか、obj のクラスがレシーバ
のクラスと異なる場合に発生します。
@see Object#clone,Object#dup

以下に例として、dup や clone がこのメソッドをどのように利用しているかを示します。

obj.dup は、...

Object#inspect -> String (1.0)

オブジェクトを人間が読める形式に変換した文字列を返します。

オブジェクトを人間が読める形式に変換した文字列を返します。

組み込み関数 Kernel.#p は、このメソッドの結果を使用して
オブジェクトを表示します。

[ 1, 2, 3..4, 'five' ].inspect # => "[1, 2, 3..4, \"five\"]"
Time.new.inspect # => "2008-03-08 19:43:39 +0900"

inspect メソッドをオーバーライドしなかった場合、クラス名とインスタンス
変数の名前、値の組を元にした文字列を返します。

class Foo
end
...

Object#instance_of?(klass) -> bool (1.0)

オブジェクトがクラス klass の直接のインスタンスである時真を返します。

...obj.kind_of?(c) も成立します。

@param klass Classかそのサブクラスのインスタンスです。

class C < Object
end
class S < C
end

obj = S.new
p obj.instance_of?(S) # true
p obj.instance_of?(C) # false

@see Object#kind_of?,Object#class...

絞り込み条件を変える

Object#instance_variable_defined?(var) -> bool (1.0)

インスタンス変数 var が定義されていたら真を返します。

...end
end
fred = Fred.new('cat', 99)
p fred.instance_variable_defined?(:@a) #=> true
p fred.instance_variable_defined?("@b") #=> true
p fred.instance_variable_defined?("@c") #=> false

@see Object#instance_variable_get,Object#instance_variable_set,Object#instance_variables...

Object#instance_variable_get(var) -> object | nil (1.0)

オブジェクトのインスタンス変数の値を取得して返します。

...@foo = 1
end
end

obj = Foo.new
p obj.instance_variable_get("@foo") #=> 1
p obj.instance_variable_get(:@foo) #=> 1
p obj.instance_variable_get(:@bar) #=> nil

@see Object#instance_variable_set,Object#instance_variables,Object#instance_variable_defined?...

Object#instance_variable_set(var, value) -> object (1.0)

オブジェクトのインスタンス変数 var に値 value を設定します。

...return value を返します。

obj = Object.new
p obj.instance_variable_set("@foo", 1) #=> 1
p obj.instance_variable_set(:@foo, 2) #=> 2
p obj.instance_variable_get(:@foo) #=> 2

@see Object#instance_variable_get,Object#instance_variables,Object#instance_variable_defined?...

Object#instance_variables -> [Symbol] (1.0)

オブジェクトのインスタンス変数名をシンボルの配列として返します。

...のインスタンス変数名をシンボルの配列として返します。

obj = Object.new
obj.instance_eval { @foo, @bar = nil }
p obj.instance_variables

#=> [:@foo, :@bar]

@see Object#instance_variable_get, Kernel.#local_variables, Kernel.#global_variables, Module.constants...

Object#is_a?(mod) -> bool (1.0)

オブジェクトが指定されたクラス mod かそのサブクラスのインスタンスであるとき真を返します。

...d
class C < Object
include M
end
class S < C
end

obj = S.new
p obj.is_a?(S) # true
p obj.is_a?(C) # true
p obj.is_a?(Object) # true
p obj.is_a?(M) # true
p obj.is_a?(Hash) # false

@see Object#instance_of?,Module#===,Object#class...

絞り込み条件を変える

Object#itself -> object (1.0)

self を返します。

...self を返します。

string = 'my string' # => "my string"
string.itself.object_id == string.object_id # => true...

Object#kind_of?(mod) -> bool (1.0)

オブジェクトが指定されたクラス mod かそのサブクラスのインスタンスであるとき真を返します。

...d
class C < Object
include M
end
class S < C
end

obj = S.new
p obj.is_a?(S) # true
p obj.is_a?(C) # true
p obj.is_a?(Object) # true
p obj.is_a?(M) # true
p obj.is_a?(Hash) # false

@see Object#instance_of?,Module#===,Object#class...

Object#marshal_dump -> object (1.0)

Marshal.#dump を制御するメソッドです。

...定義されていてもマーシャルできるようになります
(特異メソッドの情報が自動的に dump されるようになるわけではなく、
marshal_dump/marshal_load によりそれを実現する余地があるということです)。

@see Object#marshal_load, Marshal...
<< < 1 2 3 4 ... > >>