2
在PHP中我可以一個類的方法中做到這一點:紅寶石傳遞對象實例作爲參數
Condition::evaluate($this, $primaryCondition);
這讓我通過$這之類的整個實例傳遞給不同的類。我如何在Ruby中實現相同的功能?
在PHP中我可以一個類的方法中做到這一點:紅寶石傳遞對象實例作爲參數
Condition::evaluate($this, $primaryCondition);
這讓我通過$這之類的整個實例傳遞給不同的類。我如何在Ruby中實現相同的功能?
在ruby中你有一個self
關鍵字。你可以閱讀關於它in this article,它解釋了self
如何在不同的情況下表現。
你可以用Ruby做到這一點。
考慮兩類:
class Foo
def test
puts 'We are in class: For'
end
end
class Bar
def initialize(your_object)
@your_object = your_object
end
def test(i = nil)
puts 'We are in class: Bar'
if @your_object
@your_object.test
end
end
end
foo = Foo.new
bar = Bar.new(foo)
bar.test
# We are in class: Bar
# We are in class: For
^^^^你可以看到,你申請。測試對象存儲在foo的變量的方法。
類定義中的當前對象可以使用關鍵字「self」進行尋址。
好的,那跟PHP使用self :: then有很大不同。謝謝 – Dan