假设我有一些像这样的红宝石代码:
class ParentClass
def method1
# some code
end
end
class MyAwesomeSubclass < ParentClass
def method1
# some code
end
def method2
# more code
end
end
有没有办法获得子类定义的方法列表,所以在这个例子中是[:method1, :method2]
?我的第一个冲动是说MyAwesomeSubclass.methods - ParentClass.methods
,但这会删除:method1
,因为在父类上也定义了method1。我需要一个由子类定义的所有方法的列表。
感谢您的帮助。
答案 0 :(得分:3)
试试MyAwesomeSubclass.instance_methods(false)
?我相信这就是你要找的......