Autor Zpráva
Shaohao
Profil *
Zdravim,

ucim se v php a neni mi jasna jedna vec. Dejme tomu, ze mam tridy:

class A {}
class B extends A {}

ve tride A predam pomoci DI instance jinych trid a ulozim je do promenne tridy A, tohle by bylo v poradku. Ale pokud
chci pristoupit k temto instancim ve tride B ($this->instance...) promenna je prazdna.

Moc mi to nedava smysl, delam neco spatne, nebo cele toto reseni je spatne/nevhodne?
Alphard
Profil
Instance třídy B je oddělená od instance třídy A stejně jako by byla oddělená od jiné instance (té stejné) třídy B.
Dědičnost slouží k odvozování tříd od společnéo základu, nikoliv ke sdílení dat.
Spectator
Profil
Shaohao:
Pleteš si objekt a třídu.

CLASS (TŘÍDA) je předpis nebo vzor, podle kterého je OBJEKT vytvořen.

class A {
public $attr_a;
}

říká, že objekt, který bude vytvořen podle tohoto předpisu má atribut $attr_a;

class B extends A {
public $attr_b;
}

říká, že objekt, který je vytvořen podle předpisu B má atribut $attr_b, ale protože je předpis odvozený z A, tak obsahuje i $attr_a.

Class je pouze VZOR podle kterého je objekt vytvářen a podle kterého je k objektu přistupováno. Jsou to pouze pravidla podle kterých se s objektem zachází.

Teoreticky si CLASS můžeš představit jako návod k použití tlačítek mikrovlnky a mikrovlnku jako objekt. Návod ti jen říká, co se s mikrovlnkou dá dělat.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0