Ruby 初心者スレッド Part 22
at TECH
806:デフォルトの名無しさん
08/11/02 12:26:17
802 じゃないけど、なんであのエラーが出るのか理屈がわからない…。>>802 の initialize にダミー引数を渡すと呼ばれるよね。
require 'net/http'
require 'uri'
class C < Net::HTTP
Net::HTTP.version_1_2
def initialize(url, dummy=nil)
uri = URI.parse(url)
puts "C initialized"
super(uri.host, uri.port)
end
end
url = 'URLリンク(www.yahoo.co.jp)'
p c = C.new(url)
Net::HTTP を眺めて同じ挙動を再現しようと思ったけど、できないYO!
class A;end
class << A; alias newobj new; end
class A
def A.new(foo, bar=nil)
a = A.P(foo, bar).newobj(foo, bar)
end
def initialize(foo, bar=nil)
puts "A init."; @foo = foo; @bar = bar
end
def A.P(foo, bar=nil);self;end
end
class B < A
def initialize(foo)#, bar=nil)
puts "B init."; super(1, 2)
end
end
p b = B.new(3)
次ページ続きを表示1を表示最新レス表示スレッドの検索類似スレ一覧話題のニュースおまかせリスト▼オプションを表示暇つぶし2ch
4719日前に更新/256 KB
担当:undef