Kurzusok
/
Ruby
Ruby
/
Tanterv
/
Példányváltozók
Pé

Példányváltozók ebben a kurzusban: Ruby

7 feladat

A(z) Példányváltozók fogalomról

Kulcspontok:

  • Amikor egy osztály .new metódusát meghívjuk egy objektumpéldány létrehozásához, a .initialize metódus megkapja az összes argumentumot, hogy inicializálja a példány állapotát.
  • A példányváltozók neve @ előtaggal kezdődik.
  • A példányváltozók értéke alapértelmezés szerint nil, amíg kifejezetten be nem állítjuk őket.
  • A példányváltozók alapértelmezés szerint privátak, ezért gettereken és settereken keresztül érdemes velük dolgozni
class Backpack
  initialize(owner)
    @owner = owner
  end

  def owner
    @owner
  end

  def owner=(new_owner)
    @owner = new_owner
  end
end
  • A = jelre végződő metódusokat a Ruby setterként ismeri fel, és lehetővé teszik az értékadás szintaxis szintaktikai „cukorként” való használatát, pl. Backpack.new("Sven").owner = "Ayah". Figyeld meg a szóközt az owner és az = között, pedig a tényleges metódusnév owner=.
  • Gettereket és settereket az attr_reader, attr_writer és attr_accessor metódusokkal hozhatsz létre:
    • attr_reader: gettereket hoz létre a felsorolt szimbólumokhoz
    • attr_writer: settereket hoz létre a felsorolt szimbólumokhoz
    • attr_accessor: gettereket és settereket hoz létre a felsorolt szimbólumokhoz
class Backpack
  attr_accessor :owner

  initialize(owner)
    @owner = owner
  end
end
  • Miért érdemes gettereket és settereket használni a példányváltozó közvetlen elérése helyett?
    • Ha az előző példában elgépelés volt (ezt hívjuk „typo”-nak), például @ownar, akkor az csendben elbukna, és potenciálisan bugot vinne a rendszerbe.
    • A getterek és setterek ezt nyilvánvalóvá teszik, és hibát dobnak, amikor elgépelés történik.

Hivatkozások

Objektumpéldányok inicializálása

Példányváltozók

Szerkesztés GitHubon A hivatkozás új ablakban vagy lapon nyílik meg

Tanuld meg a(z) Példányváltozók fogalmat

A gyakorlás zárolva

Oldj fel még 5 feladatot, hogy gyakorolhasd a(z) Példányváltozók fogalmat