Ruby类声明语法

时间:2016-02-16 15:02:34

标签: ruby

我在文件中读过这两行代码:这是类声明的头部

class Myclass::Event

  class DeprecatedMethod < StandardError; end

我知道第一行在名称空间Event中声明了一个名为LogStash的类。我想知道第二行意味着什么。

更新: 实际上我了解到ruby中的一个类应该声明为

class Myclass::Event


 // body of the classe here : methods and so on...

end

但这样做有什么意义呢?

class Myclass::Event
   class DeprecatedMethod < StandardError; end // whatdoes this line means ?  

  // body of the classe here : methods and so on...
   end

1 个答案:

答案 0 :(得分:3)

第二行在DeprecatedMethod中声明LogStash::Event。因此,该类的完全限定名称(FQN)为LogStash::Event::DeprecatedMethod。此外,此类是StandardError的子类。

  

我知道第一行声明了一个名为Event

的类

几乎。第一行打开类声明。没有匹配的end它是不完整的,如果这两行是文件中的所有代码,则会产生语法错误。第二行是完整的声明(具有匹配的end)。