Autor | Zpráva | ||
---|---|---|---|
hellmc Profil |
#1 · Zasláno: 6. 3. 2015, 14:30:11
Ahoyte ..
Začínam s oop a nejak mi nejde dedičnosť tak, ako by som si predstavoval .... Mám objekt "jadro" a objekt "hlava" (class hlava extends jadro) v jadre mam atribut : "public $str_lmenu" a chcel by som s nim pracovat v class hlava, malo by to byť len $this->str_lmenu ak sa nemylim, keď vytvorím objekt $j=new jadro(); $j->str_lmenu=array("nieco",...atd); $x=new hlava(); $x->init(); keď však zadám hodnotu pre $str_lmenu v triede jadro, alebo v jeho __construct, je to v poriadku dá sa hodnota atribútu nastaviť tak ako je to vyššie, a používať túto v child triede ? Dík za pomoc ... |
||
Alphard Profil |
#2 · Zasláno: 6. 3. 2015, 14:41:17
Nedá, takhle to v PHP nefunguje. Byť návrh třídy hlava dědí od jadro, jejich instance jsou oddělené.
|
||
Joker Profil |
#3 · Zasláno: 6. 3. 2015, 15:11:04
Nicméně místo dědičnosti by v té situaci fungovalo skládání:
class Jadro { public $hlava; // … } //… $jadro = new Jadro(); $jadro->hlava = new Hlava(); |
||
Časová prodleva: 3 dny
|
|||
hellmc Profil |
#4 · Zasláno: 9. 3. 2015, 14:04:41
Ďakujem ... páni
|
||
joe Profil |
#5 · Zasláno: 9. 3. 2015, 19:35:59
Ještě lépe je závislost předsat, pokud je povinná, pak přes konstruktor, pokud ne, tak přes setter.
|
||
Časová prodleva: 10 let
|
0