<?php class Hi { protected $message = 'Hello'; public function setMessage(string $message) { $this->message = $message; } public function sayHello() : string { return $this->message; } } class CopyCat extends Hi { public function __construct(Hi $realThing) // should be a named constructor instead { $this->message = & $realThing->message; } public function sayHello() : string { return 'Meow! ' . $this->message; } } $hi = new Hi; $hi->setMessage('Hello'); $copyCat = new CopyCat($hi); var_dump($hi->sayHello()); var_dump($copyCat->sayHello()); $hi->setMessage('Hi'); var_dump($hi->sayHello()); var_dump($copyCat->sayHello());
You have javascript disabled. You will not be able to edit any code.