简明现代魔法 -> PHP服务器脚本 -> PHP 面向对象:抽象类

PHP 面向对象:抽象类

2010-05-05

可以使用abstract来修饰一个类或者方法。

用abstract修饰的类表示这个类是一个抽象类,用abstract修饰的方法表示这个方法是一个抽象方法。

抽象类不能被实例化。

抽象方法是只有方法声明,而没有方法的实现内容。

用abstract修饰的类表示这个类是一个抽象类。抽象类不能被实例化。

这是一个简单抽象的方法,如果它被直接实例化,系统会报错。

<?
//定义一个抽象类.
abstract  class User{
    
    //定义它的__toString 方法.
    public function __toString(){
        return get_class($this);
    }
}
//实例化这个类会出错.<h1></h1>
echo new User();

?>

程序运行结果:

Fatal error: Cannot instantiate abstract class User in E:\PHPProjects\test.php on line 11

下面例子的 NormalUser 继承自 User类,就可以被实例化了。

<?
//定义一个抽象类.
abstract class User{
    
    //定义它的__toString 方法.
    public function __toString(){
        return get_class($this);
    }
}
//实例化这个类会出错.<h1></h1>
//echo new User();

class NormalUser extends User {
    
}
$a = new NormalUser() ;
echo "这是类 ";
echo $a;
echo " 的实例";
?>

程序运行结果:

这是类 NormalUser 的实例

单独设置一个抽象类是没有意义的,只有有了抽象方法,抽象类才有了血肉。

随机文章推荐
网站分类


注:如需转载本文,请注明出处(原文链接),谢谢。更多精彩内容,请进入简明现代魔法首页。

进入新博客
喜欢本文,就分享它吧
给我留言
您的名字:
您的邮件:
您的网站:


 

copyright © 2009 简明现代魔法    学习、分享、进步

power by Gonn 感谢所有关心和支持本站的朋友们