



抽象类是不能创建实例的类,定义时使用abstract关键字。如下面的代码(/demo/tUnitBase.php),这里定义的tUnitBase就是一个抽象类。
下面的代码(/demo/tUnitBase.php)使用tUnit类继承tUnitBase类。
接下来测试tUnit类的使用。
<?php
require_once $_SERVER["DOCUMENT_ROOT"]."/demo/tUnitBase.php";
$unit = new tUnit();
$unit->x=10;
$unit->y=99;
$unit->moveTo(101,156);
echo "<br>";
var_dump($unit instanceof tUnit);
var_dump($unit instanceof tUnitBase);
?>
代码执行结果见图6-11。
图 6-11
本例中,首先测试了tUnit类的使用,创建的$unit对象定义为tUnit类的实例;其次调用了moveTo()方法;最后使用instanceof运算测试$unit对象的类型。可以看到,它既是tUnit类的实例又是其父类的实例。