在Java中,您可以执行instanceof。是否有与Ruby等价的产品?
在Java中,您可以执行instanceof。是否有与Ruby等价的产品?
Answers:
看一下instance_of?和kind_of?方法。这是doc链接http://ruby-doc.org/core/classes/Object.html#M000372
我已经成功 klass,它返回了类对象。这似乎是特定于Rails的。
用法示例:
class Foo
end
Foo.new.klass
# => Foo
Foo.new.klass == Foo
# => true
Foo.new.klass == "Foo"
# => false
还有一种方法可以完成此任务:Object.is_a?,该方法将类对象作为参数,如果self是类的实例或子类的实例,则返回true 。
Array.class应该也一样。我的答案很混乱,因为我正在使用的库是Object带有method的extends类class。
my_instance.klass无论有没有Rails,至少在2020年都无法使用。my_instance.class是获取对象类的正确方法。
self是参数的子类的实例,则返回false 。