这个模式是对继承的最好诠释。当子类有重复动作时,将其重复动作放入父类统一处理,这就是模板方法最简单通俗的解释。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
abstract class BaseController
{
public function baseMethod()
{
echo 'base method', PHP_EOL;
}

public abstract function operate();
}

class UserController extends BaseController {

public function operate()
{
echo 'user operate', PHP_EOL;
}
}

$user = new UserController();
$user->baseMethod();
$user->operate();

这个模式太简单了,就不多说了。