gpt4 book ai didi

ruby - 从Ruby中的子类方法调用父类中的方法

转载 作者:数据小太阳 更新时间:2023-10-29 06:21:34 26 4
gpt4 key购买 nike

我已经使用 super 来初始化父类,但我看不到任何从子类方法调用父类的方法。

我知道 PHP 和其他语言确实具有此功能,但找不到在 Ruby 中执行此操作的好方法。

遇到这种情况你会怎么做?

最佳答案

如果方法同名,即你要覆盖一个方法,你可以简单地使用 super。否则,您可以使用 alias_method 或绑定(bind)。

class Parent
def method
end
end

class Child < Parent
alias_method :parent_method, :method
def method
super
end

def other_method
parent_method
#OR
Parent.instance_method(:method).bind(self).call
end
end

关于ruby - 从Ruby中的子类方法调用父类中的方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18448831/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com