In Ruby, have you ever wanted to know if an object is of a particular type?
method will return a true value if an object is of the type given as a parameter. However, instance_of?
will return a false if we use it to check whether an object inherits from
another class. So it's an exact check
on the class name.
method will return a true value if an object is a of the type given as a parameter OR if it inherits from the type given as a parameter. So in effect, you can use it to ask "is there going to be a method from a class which I can run on this object".
Some sample code:
glug.each do |current|
puts current.bright, current.sides, current.area
If the objects in the array glug
are of type "Box" and "Circle" (which they were on today's Ruby Course
), and boxes and circles inherit from Shapes, then the instance_of?
calls will all return false, and the is_a?
calls will return true. (written 2010-01-27, updated 2010-01-28)
Associated topics are indexed as below, or enter http://melksh.am/nnnn for individual articlesR108 - Ruby - More Classes and Objects 
Testing your new class - first steps with cucumber - (2015-10-23) 
Build up classes into applications sharing data types in Ruby - (2015-10-23) 
Where does Ruby load modules from, and how to load from current directory - (2015-06-03) 
Changing what operators do on objects - a comparison across different programming languages - (2014-12-26) 
Standard methods available on all objects in Ruby - (2012-06-23) 
Private, Protected, Public in Ruby. What about interfaces and abstract classes in Ruby? - (2012-06-23) 
Why you should use objects even for short data manipulation programs in Ruby - (2012-06-10) 
Ruby - a training example that puts many language elements together to demonstrate the whole - (2011-04-23) 
Ruby training - some fresh examples for string handling applications - (2011-02-05) 
Changing a class later on - Ruby - (2011-02-02) 
Private and Public - and things between - (2011-01-22) 
Ruby - examples of regular expressions, inheritance and polymorphism - (2010-10-02) 
What is a factory method and why use one? - Example in Ruby - (2010-09-30) 
The Multiple Inheritance Conundrum, interfaces and mixins - (2010-04-11) 
Object Oriented Ruby - new examples - (2010-02-03) 
Direct access to object variable (attributes) in Ruby - (2010-02-02) 
Defining a static method - Java, Python and Ruby - (2010-02-01) 
Tips for writing a test program (Ruby / Python / Java) - (2010-01-29) 
Ruby objects - a primer - (2010-01-29) 
Object Orientation in Ruby - intermediate examples - (2009-07-16) 
Some Ruby programming examples from our course - (2008-03-21) 
What are factory and singleton classes? - (2007-06-04) 
Think about your design even if you don't use full UML - (2006-03-24) 
MTBF of coffee machines - (2005-01-20)
Some other Articles
Ruby on Rails - a sample application to teach you howEast of Melksham - Building Work StartsRuby - is_a? v instance_of? - what is the difference?Go Programming Language and Courses?Telling Apache web servers apart / notes for the non-technicalAn excuse for making a sales callDoes my course include breakfast, lunch, dinner and a hotel room?Http protocol - what does a web server send