утвердите тип класса одного объекта в направляющих

У меня есть простой вопрос о синтаксисе направляющих:

То, как я могу узнать, к которому классифицируют объект, принадлежит?

Я пытаюсь сделать что-то как:

if class(object) == MyClass

Спасибо Maechi

9
задан sepp2k 26 July 2010 в 19:35
поделиться

2 ответа

Вы можете сделать

if object.class == MyClass

или

if object.is_a?(MyClass)

Последний также возвращает true, если объект является экземпляром подкласса MyClass.

22
ответ дан 4 December 2019 в 07:04
поделиться
object.is_a?(MyClass)
object.kind_of?(MyClass)

Возвращает истину, если class является классом obj или если class является одним из суперклассов obj или модулей, включенных в obj. С псевдонимом «


object.instance_of?(MyClass)
object.class == MyClass

Возвращает истину, если obj является экземпляром данного класса.


MyClass === object

Идентично методу is_a? . Полезно для операторов case, таких как

case object
when MyClass
when OtherClass
…
end
10
ответ дан 4 December 2019 в 07:04
поделиться
Другие вопросы по тегам:

Похожие вопросы: