为什么这个抽象类在Php中输出什么?

时间:2011-07-19 19:42:45

标签: php oop

为什么这个抽象类不起作用而且什么都不输出?

<?php
abstract class Con {
    function __construct($name);
    }
}
class Shop extends Con {
    function __construct($name) {
        $this->shopname = $name;
    }
    function write() {
        echo $this->shopname;
    }
    function outputdate() {
        echo ' ' . date('Y');
    }
    function __destruct() {
        $this->outputdate();
    }
}

2 个答案:

答案 0 :(得分:3)

您无法在其他类主体中定义某个类。相反,您必须使用PHP OOP功能将一个类扩展到另一个类。

class Shop extends Con{
...code goes here....
}
$shop = new Shop('shopname');
$shop->write();

答案 1 :(得分:1)

您无法实例化抽象类。此外,您无法在另一个类中创建类。

http://php.net/manual/en/language.oop5.abstract.php

http://en.wikipedia.org/wiki/Abstract_type

如果您要查找子类,请查看此链接。

http://php.net/manual/en/keyword.extends.php