任务:
定义接口
iTalkable 具有⽅法 talk()
定义接口 iPlayable
具有⽅法 play()
定义抽象类 People,实现上述两个接口
定义类 Teacher 继承⾃People
解决方案
<?php
interface iTalkable{
public function talk();
}
interface iPlayable{
public function play();
}
abstract class People implements iTalkable,iPlayable
{
abstract public function talk();
abstract public function play();
}
class Teacher extends People
{
public function talk()
{
echo "i talk";
}
public function play()
{
echo "i play";
}
}
function testtalk(iTalkable $talk)
{
$talk->talk();
}
function testplay(iPlayable $play)
{
$play->play();
}
$teacher=new Teacher;
testtalk($teacher);
echo "</br>\n";
testplay($teacher);
echo "</br>\n";
var_dump($teacher instanceof Teacher);
echo "</br>";
var_dump($teacher instanceof People);
echo "</br>";
var_dump($teacher instanceof iTalkable);
echo "</br>";
?>
运行结果
![](https://img.haomeiwen.com/i8303998/3946374cf7a85224.jpg)
网友评论