Kapitola 31. Objekty a třídy

Obsah

31.1. Viditelnost metod
31.2. Supertřída Class
31.3. Třída Object

FIXME: ZRUŠIT!!!

Zjednosušený zápis definice třídy vypadá takto

class jméno_třídy
    def název metody
        příkazy  # tělo metody
    end
    ... definice dalších metod
end

Jak je i na tomto zjednodušeném příkladu vidět, definujeme jen metody, nikoliv atributy objektu.

K dispozici máme několik konstruktorů přistupových metod pro atributy objektu. Ve zkratce jsou to

Zjednodušené zavedení atributů instance a jejich přístupových metod.

class Song
    attr_reader :name
    attr_writer :duration
    attr        :volume
    attr_accessor :date, :symptom, :solution
    attr_.....
end

Použití konstruktoru attr_accessor

class Obj
    attr_accessor :foo
end

je ekvivalentní definici metod foo a foo=

class Obj
    def foo
        return @foo
    end
    def foo=(newValue)
        @foo = newValue
    end
end
Licence Creative Commons
Tento dokument Ruby, jehož autorem je Radek Hnilica, podléhá licenci Creative Commons Uveďte autora-Nevyužívejte dílo komerčně-Zachovejte licenci 3.0 Česká republika .