Ruby/Методика самопознания: различия между версиями

Содержимое удалено Содержимое добавлено
Строка 117:
Обратите внимание, что число пять хоть и является целым, но метод <tt>.instance_of?</tt> не признает его экземляром класса <tt>Integer</tt>. В принципе он прав: число пять является экземпляром класса <tt>Fixnum</tt>, а не <tt>Integer</tt>. Это означает, что метод <tt>.instance_of?</tt> излишне строг.
 
И что же нам делать, если эта строгость нам нени к чему? Для этого можно воспользоваться методами <tt>.class</tt>, <tt>.ancestors<tt> и <tt>.include?</tt>, которые будут учитывать не только текущий класс, но и его родительские классы с примесями.
 
<source lang=ruby>my_number = 5