Inheritance allows classes to define specific behaviour based on an existing class.
class Animal
  def say_hello
    'Meep!'
  end
  def eat
    'Yumm!'
  end
end
class Dog < Animal
  def say_hello
    'Woof!'
  end
end
spot = Dog.new
spot.say_hello # 'Woof!'
spot.eat       # 'Yumm!'
In this example:
Dog Inherits from Animal, making it a Subclass.Dog gains both the say_hello and eat methods from Animal.Dog overrides the say_hello method with different functionality.