Advertisement
Guest User

Untitled

a guest
Jul 26th, 2016
53
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.46 KB | None | 0 0
  1. class Pet
  2. attr_reader :color, :breed, :name
  3. attr_accessor :name #accessor combines reader and writer
  4.  
  5. def initialize(color, breed)
  6. @color = color
  7. @breed = breed
  8. @hungry = true
  9. end
  10.  
  11. def feed(food)
  12. puts "Mmm, " + food + "!"
  13. @hungry = false
  14. end
  15.  
  16. def hungry?
  17. if @hungry
  18. puts "I'm hungry!"
  19. else
  20. puts "I'm full!"
  21. end
  22. @hungry
  23. end
  24. end
  25.  
  26. class Cat < Pet
  27. def speak
  28. puts "Meow!"
  29. end
  30. end
  31.  
  32. class Dog < Pet
  33. def speak
  34. puts "Woof!"
  35. end
  36. end
  37.  
  38. kitty = Cat.new("grey", "Persian")
  39.  
  40. puts "Let's inspect our new cat:"
  41. puts kitty.inspect
  42. puts "What class does our new cat belong to?"
  43. puts kitty.class
  44. puts "Is our new cat an object?"
  45. puts kitty.is_a?(Object)
  46. puts "What color is our cat?"
  47. puts kitty.color
  48. puts "Let's give our new cat a name"
  49. kitty.name = "Gwenny"
  50. puts kitty.name
  51. puts "Is our cat hungry now?"
  52. kitty.hungry?
  53. puts "Let's feed our cat"
  54. kitty.feed("tuna")
  55. puts "Is our cat hungry now?"
  56. kitty.hungry?
  57. puts "Our cat can make noise"
  58. kitty.speak
  59.  
  60. doggy = Dog.new("yellow", "Golden Retriever")
  61.  
  62. puts "Let's inspect our new dog:"
  63. puts doggy.inspect
  64. puts "What class does our new dog belong to?"
  65. puts doggy.class
  66. puts "Is our new dog an object?"
  67. puts doggy.is_a?(Object)
  68. puts "What color is our dog?"
  69. puts doggy.color
  70. puts "Let's give our new dog a name"
  71. doggy.name = "Fenway"
  72. puts doggy.name
  73. puts "Is our dog hungry now?"
  74. doggy.hungry?
  75. puts "Let's feed our dog"
  76. doggy.feed("pizza")
  77. puts "Is our dog hungry now?"
  78. doggy.hungry?
  79. puts "Our dog can make noise"
  80. doggy.speak
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement