## 2 Luokka joka tekee jotain **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}." ```