class Test
{
public $vbar='test';
protected function beforeBar(){}
public function bar(){
$this->beforeBar();
echo "bar function\n";
}
}
class MTest extends Test
{
public function beforeBar(){
echo "beforeBar function\n";
}
}
$mtest = new MTest();
$mtest->bar();请问这样的编程实践是否有一个很NB的专业名称啊?
{
public $vbar='test';
protected function beforeBar(){}
public function bar(){
$this->beforeBar();
echo "bar function\n";
}
}
class MTest extends Test
{
public function beforeBar(){
echo "beforeBar function\n";
}
}
$mtest = new MTest();
$mtest->bar();请问这样的编程实践是否有一个很NB的专业名称啊?
插件类不应该继承Test主类,而应是一个单独的类,可以部署在代码的所有地方,看joomla源码,实现过程很简单,也很清晰。drupal的hook机制其实也类似,代码里放钩子,具体类实现钩子。
其实原理我觉得都一样的,windows钩子也是微软在具体进程里安放钩子,然后公布给开发人员,这样就可以很方便的嵌入和监听,又不用更改主体的源代码了,对于微软问题是想改也改不了,呵呵。