查看可用方法ruby

如何在ruby中查看对象上的所有可用方法。 当我输入File时,我正在使用aptana IDE。 没有显示任何方法。 我来自eclipse / java背景。

谢谢

有几种方法:

obj.methods obj.public_methods obj.private_methods obj.protected_methods obj.singleton_methods 

更新

  1. 要使对象方法与所有inheritance的方法区分开来,您可以执行以下操作:

    obj.methods(假)

  2. 正如Tempus在评论中提到的,以下命令非常有助于将当前对象方法与Object(基类)inheritance的方法区分开来:

    obj.methods – Object.methods

如果要忽略超类中定义的方法,可以将true传递给方法:

 obj.methods(true) obj.public_methods(true) obj.private_methods(true) obj.protected_methods(true) obj.singleton_methods(true) 

或者,如果您只想删除Object类中定义的最常用方法,则需要附加- Object.methods- Object.instance_methods ,具体取决于obj是类还是类的实例。

我还要注意, obj.methods不会返回排序的方法名称,因此您可能想要执行obj.methods.sort

如果您运行了Ruby解释器, .methods将显示该对象的可用方法。 在我输入File. Eclipse中File. 在我执行内容辅助命令(CTRL +空格)之前没有任何反应。 那时我确实得到了方法列表。

您可以在交互式Ruby解释器中调用File.methods以查看所有可用的方法。 我不确定您使用的IDE中是否存在某种方式,因为我之前没有使用它。