Ruby 程式設計 / 參考 / 內建函式
外觀
預設情況下,有多種方法可用。您可以透過在 irb 會話中執行 methods 來檢視可用方法,例如
>> class A; end >> A.instance_methods [:nil?, :===, :=~, :!~, :eql?, :class, :clone, :dup, :taint, :tainted?, :untaint, :untrust, :untrusted?, :trust, :freeze, :frozen?, :to_s, :inspect, :methods, :singleton_methods, :protected_methods, :private_methods, :public_methods, :instance_variables, :instance_variable_get, :instance_variable_set, :instance_variable_defined?, :instance_of?, :kind_of?, :is_a?, :tap, :send, :public_send, :respond_to?, :extend, :display, :method, :public_method, :define_singleton_method, :hash, :__id__, :object_id, :to_enum, :enum_for, :gem, :==, :equal?, :!, :!=, :instance_eval, :instance_exec, :__send__]
您可以透過檢查物件層級來檢視大多數這些方法的定義位置
>> A.ancestors => [A, Object, Kernel, BasicObject]
1.9 引入了更多方法,如 __method__(當前方法名稱)以及 require_relative,該方法需要相對於當前檔案目錄的檔案。
若要檢視每個方法的定義位置,您可以執行類似下方內容
>> A.instance_methods.map{|m| [m, A.instance_method(m).owner] }
=> [[:nil?, Kernel], ...