【S4】問4解答例
<?php
/**
* DriveInterfaceインターフェースを定義
*/
interface DriveInterface
{
public function drive(): void;
}
<?php
/**
* FlyInterfaceインターフェースを定義
*/
interface FlyInterface
{
public function fly(): void;
}
<?php
/**
* クラス Car を作成し、DriveInterfaceを実装
*/
class Car implements DriveInterface
{
public function drive(): void
{
echo '車を運転しました' . PHP_EOL;
}
}
<?php
/**
* クラスAirplaneを作成し、DriveInterfaceとFlyInterfaceを多重実装
*/
class Airplane implements DriveInterface, FlyInterface
{
public function drive(): void
{
echo '飛行機を運転しました' . PHP_EOL;
}
public function fly(): void
{
echo '飛行機を飛行させました' . PHP_EOL;
}
}
<?php
// Carクラスを使用
$car = new Car();
$car->drive();
// Airplaneクラスを使用
$airplane = new Airplane();
$airplane->drive();
$airplane->fly();