Skip to content

Instantly share code, notes, and snippets.

@kajatiger
Created October 20, 2016 13:03
Show Gist options
  • Save kajatiger/191b507843e52a9e3bddae64797795e5 to your computer and use it in GitHub Desktop.
Save kajatiger/191b507843e52a9e3bddae64797795e5 to your computer and use it in GitHub Desktop.
inheritance class
class Pet
attr_reader :color, :breed
attr_accessor :name
def initialize(color, breed)
@color = color
@breed = breed
@hungry = true
end
def feed(food)
puts "mmmm," + food + "!"
@hungry = false
end
def hungry?
if @hungry
puts "I'm hungry!"
else
puts "I'm full."
end
@hungry
end
end
class Cat < Pet
def speak
puts "meow!"
end
end
class Dog < Pet
def speak
puts "woof!"
end
end
puppy = Dog.new("black", "Labrador")
puppy.speak
puts puppy.breed
kitty = Cat.new("grey", "Persian")
puts "what color is your cat?"
puts kitty.color
puts "give your cat a new name"
kitty.name = "tiger"
puts kitty.name
puts "Is our cat hungry now?"
kitty.hungry?
puts "Let's feed our cat"
kitty.feed("tuna")
puts "Is our cat hungry now?"
kitty.hungry?
puts "our cat can make noise"
kitty.speak
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment