我试图找出天气我能不能做到这一点。我有一个名为模板的类。我想在另一个文件中扩展该类的功能,但我不想更改名称。
我是否将其声明为
class template extends template
{
// code here
function foo()
{
}
}
还是我就这样声明?
class template
{
// write function
function foo()
{
}
}
仅当父类在另一个命名空间中时。
use SomeNamespace\Template as BaseTemplate;
class Template extends BaseTemplate
{
//...
}
如果你想使用原始类的方法/属性,你可以扩展它,但你必须使用不同的名称,否则你会得到一个关于重新声明类的错误。
基本上:
class template {}
/* both fail with "cannot redeclare class template */
class template extends template {}
class template {}
我很确定你不能。我建议您执行以下操作:
class Template extends TemplateBase
{
// code
}
您可能想查看classkit