Kohana 3中空抽象类的目的是什么?

Tap*_*eak 1 php oop kohana kohana-3 kohana-orm

我在实践中并没有多多使用抽象类,尽管我理解它们是什么:一种指定子类的方法必须实现哪些方法.

我只是通过Doxygen放置了一个Kohana项目,可以完整地看到类层次结构.我看到,在链条的顶端,我们有一个工厂:

abstract class Kohana_Model { 

    public static function factory($name){
        // Add the model prefix
        $class = 'Model_'.$name;
        return new $class;
    }

}
Run Code Online (Sandbox Code Playgroud)

直接在它下面继承,我们有一个空的抽象类:

abstract class Model extends Kohana_Model {}
Run Code Online (Sandbox Code Playgroud)

......其下方,有三个继承类:Kohana_Model_Database,Kohana_ORM,和Model_Foobar.

有人请为此解释编程推理 - 在链中有一个空的抽象类的目的是什么?(而且,根本?)

为什么Kohana_Model_Database,Kohana_ORM和Model_Foobar直接从Kohana_Model继承,当(显然?)Model和Kohana_Model之间没有其他分支或继承时?

Kem*_*emo 5

您正在寻找的答案是级联文件系统透明扩展.