Tehtävä:
Toisessa tehtävässä jatketaan luokkien kanssa työskentelyä. Tällä kertaa tehtävänäsi on määritellä luokka Laatikko, jolle alustuksen yhteydessä luodaan jäsenmuuttuja sisus.
Määrittele tälle jäsenmuuttujalle asettaja- ja palauttajametodit, sekä tee alustuksen yhteyteen mahdollisuus määritellä muuttujan arvo, asettaen oletusarvoksi "nil".
Tämän jälkeen kopioi seuraava ohjelmakoodi lähdekoodiisi; koodilla kokeillaan luokkamäärittelyn toimintaa:
Varasto = Laatikko.new()
Varasto.sisus = "puuhapakki"
puts "Varastossa on sisällä #{Varasto.sisus}."
Toimiessaan oikein ohjelma tulostaa seuraavaa:
Example output:
Varastossa on sisällä puuhapakki.
Vastaus
#!/usr/bin/env ruby
# coding: utf-8
class Laatikko
# alustaja
def initialize(sisalto=nil)
@sisus = sisalto
end
# Perinteinen tapa määrittää setter/getter-metodit jäsenmuuttujalle
#
# set-metodi
# def sisus=(sisalto)
# @sisus = sisalto
# end
# get-metodi
# def sisus
# @sisus
# end
# Tai yksinkertaisemmin Rubyn omia määritteitä käyttäen
attr_accessor :sisus
end
Varasto = Laatikko.new()
Varasto.sisus = "puuhapakki"
puts "Varastossa on sisällä #{Varasto.sisus}."