pas ji kaip ir nieko bendro Core ir Unit neturejo, ne implements ne extends... buvo 2 visai nesusija klases ir bandoma kazkaip kreiptis is vienos i kita...
kazkas tokio but turetu:
interface a {
}
class b implements a {
const F1 = 100;
const F2 = 200;
const F3 = 300;
protected $a;
}
class c extends b {
function __construct(){
$this->a = self::F1;
}
}
"saimhe" <oh.no@oh.my> wrote in message news:j30abh$a59$1@trimpas.omnitel.net...
>> Abiejuose objektuose naudojama klasė Unit turi pasiekti tik to objekto kintamąjį. Arba aš kažką labai smarkiai praleidžiu OOP arba
>> noriu kažko nesamoningo.
>
> Bazinė Unit pasiekia tik nuosavus ir tėvinių klasių kintamuosius.
> Atitinkamai išvestinė Core pasieks bet kurį Unit kintamąjį, kuris yra
> public.
> Norint pasiekti išvestinės kintamuosius -- deja, friend class čia
> nėra, dalinis pakaitalas bus per abstrakčius getter/setter metodus:
>
>
> abstract class Base {
> abstract protected function getChldData();
>
> function result() {
> echo $this->getChldData() . "\n";
> }
> }
>
> class Chld extends Base {
> var $data;
> public function Chld($init) {
> $this->data = $init;
> }
>
> protected function getChldData() {
> return $this->data;
> }
> }
>
> $c = new Chld('aaa');
> $c->result();
>
>
> --
> saimhe
>