gpt4 book ai didi

ruby-on-rails - 如何在 Ruby 中定义私有(private)方法?

转载 作者:数据小太阳 更新时间:2023-10-29 08:18:27 25 4
gpt4 key购买 nike

刚开始学习Ruby。我对 Ruby 的 private 关键字感到困惑。

假设我有这样的代码

private

def greeting
random_response :greeting
end

def farewell
random_response :farewell
end

private 是否仅应用于 #greeting 或两者 - #greeting#farewell

最佳答案

将私有(private)/ protected 方法放在文件底部是相当标准的。 private 之后的所有内容都将成为私有(private)方法。

class MyClass

def a_public_method

end

private

def a_private_method
end

def another_private_method
end

protected
def a_protected_method
end

public
def another_public_method
end
end

正如您在本示例中看到的,如果您真的需要,您可以返回使用public 关键字声明公共(public)方法。

通过将您的私有(private)/公共(public)方法缩进另一个级别,可以更容易地看到范围发生变化的位置,以直观地看到它们被分组在 private 部分等下。

您还可以选择只声明一次性私有(private)方法,如下所示:

class MyClass

def a_public_method

end

def a_private_method
end

def another_private_method
end
private :a_private_method, :another_private_method
end

使用 private 模块方法仅将单个方法声明为私有(private)方法,但坦率地说,除非您总是在每个方法声明之后立即这样做,否则查找私有(private)方法可能会有点困惑.我只是喜欢把它们贴在底部 :)

关于ruby-on-rails - 如何在 Ruby 中定义私有(private)方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22029396/

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