有什么不同?我什么时候应该使用哪个?为什么会有这么多?
最佳答案
kind_of?
和is_a?
是同义词。instance_of?
与其他两个不同之处在于,如果对象是该确切类的实例而不是子类,则仅返回true
。
例:
"hello".is_a? Object
和"hello".kind_of? Object
返回true
,因为"hello"
是String
而String
是Object
的子类。 "hello".instance_of? Object
返回false
。 关于ruby - Ruby : kind_of? vs. instance_of? vs. is_a?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3893278/