Ruby:奇怪的方法声明

时间:2014-12-18 15:05:55

标签: ruby rest

我是ruby的新手(来自java),但我知道方法声明应该以{{1​​}}开头。

我正在尝试使用REST api客户端编程的框架。 (厌倦)

我的问题是:为什么可以声明如下方法?为什么不使用'_def'?

对我而言,它看起来像属性和方法之间的混合,我很困惑。

_def method name do ..... end

2 个答案:

答案 0 :(得分:2)

这实际上不是方法声明,它是附加了块的方法调用。这基本上是一样的:

@@GET_MY_REST_API_FOLDER = "get_my_rest_api_folder"
get(GET_MY_REST_API_FOLDER, "/abc...") do |resource|
  ...
end

块内的代码将在目标对象的范围内执行。

答案 1 :(得分:0)

您没有声明方法,而是调用名为get的方法。该方法可能会在您的班级中为您声明一种方法。

方法可以用似乎"不可执行的方式调用"如果你习惯了其他类C语言,你班上的空间。