class Vehicle
{
protected function startEngine()
{
echo '⚡';
}
}
class Plane extends Vehicle
{
public function fly()
{
echo '✈';
}
}
class Boat extends Vehicle
{
public function sail()
{
echo '⚓';
}
}
12年8月9日木曜日
interface Plane
{
public function fly();
}
interface Boat
{
public function sail();
}
12年8月9日木曜日
23.
class SimplePlane extendsVehicle implements Plane
{
public function fly()
{
echo '✈';
}
}
class SimpleBoat extends Vehicle implements Boat
{
public function sail()
{
echo '⚓';
}
}
12年8月9日木曜日
24.
class SeaPlane extendsVehicle implements Plane, Boat
{
private $boat;
private $plane;
public function __constract()
{
$this->boat = new SimpleBoat();
$this->plane = new SimplePlane();
}
public function sail()
{
return $this->boat->sail();
}
public function fly()
{
return $this->plane->fly();
}
}
$seaPlane = new SeaPlane();
$seaPlane->sail(); // !
$seaPlane->fly(); // ✈
12年8月9日木曜日