虽然做了已经快两年的PHP,但是经过一些面试,发现自己对于某些概念性问题还是不是太清楚,模棱两可,容易混淆,所以下定决心,把自己模糊的概念给搞清楚,就自己动手写一些抽象类方法。
首先,如果你要定义一个抽象类(abstract),在抽象类中写入抽象方法,然后再写一个子类继承该抽象类,再在该子类中写入非抽象方法。运行之后,会输出致命性的错误,如何调试,看一下代码:
<?php
header("content-type:text/html; charset=utf-8;");//如果你的文件编码是utf-8的,最好加上这一句
abstract class test {//定义一个抽象类
// abstract function check() {//抽象类放法无法执行,如果解开本注释,会提示一下错误!
//Fatal error: Abstract function test::check() cannot contain body in D:\wamp\www\mytest\abstractclass.php on line 7
function check() {//非抽象类方法可继承执行
echo "我是test父类的check方法";
}
}
class aa extends test {//定义一个子类,继承test抽象类
function check() {//定义一个check方法,这是一个非抽象方法,可以调用输出
echo "我是test继承类的方法输出";
}
}
$zilei=new aa();
$zilei->check();
?>
|
|