Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- CLASSES
- require './pet.rb'
- class Person
- attr_accessor :first_name, :last_name, pet #this accepts a special argument; function that declares certain properties in your class; attr_accessor will create an instance for your class
- def initialize(first_name, last_name)
- @first_name = first_name
- @last_name = last_name
- def to_s #calls get_name which we have defined and then creates a functionality of a string of Person for each instance
- get_name
- end
- def walk
- puts "Walking"
- end
- def get_name #returns first name and last name
- "#{@first_name @last_name} #@last_name)" #string
- end
- def set_first_name(first_name)
- @first_name = first_name
- end
- def set_last_name(last_name)
- @last_name = last_name
- end
- def give_pet(pet)
- @pet = pet
- end
- end
- class Animal
- attr_accessor :animal_type
- def breathe
- puts "Animal is breathing"
- end
- end
- require './animal.rb'
- class Pet < Animal #inheritance in Ruby is shown through "<"
- attr_accessor :name
- def initialize(name)
- @name = name
- end
- RUNNER
- require "./person"
- require "./pet"
- p1 = Person.new("Mikey", "Raymundo")
- pet1 = Pet.new("Lassie")
- p1.give_pet(pet1)
- puts "Person name: #{p1.get_name}"
- puts "Pet name #{p1}: #{p1.pet.get_name}"
- **symbol is a pointer that points to an entity in your program
- **vim
- **program.rb
- **all classes have xx.new which is the constructor
- **require './person.rb'
- looping
- 3.times do
- p1.walk
- end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement