模板模式的核心是定义操作流程;
比如:出门买东西这件事,需要做准备、出门、在路途中、买东西等这一系列动作;
不同的人出门前做的准备、出行方式、需要购买的方式可能都不一样,但他们存在共同的执行顺序,可定义如下模板
注:钩子方法:钩子方法用于连接流程中可有可无动作;
如下例中,出门买东西后,有些人可能需要在外就餐,有些人会直接回家,于是使用isEatingOutside()来判断是否需要在外就餐,isEatingOutside被称作钩子方法
模板模式的核心是定义操作流程;
比如:出门买东西这件事,需要做准备、出门、在路途中、买东西等这一系列动作;
不同的人出门前做的准备、出行方式、需要购买的方式可能都不一样,但他们存在共同的执行顺序,可定义如下模板
注:钩子方法:钩子方法用于连接流程中可有可无动作;
如下例中,出门买东西后,有些人可能需要在外就餐,有些人会直接回家,于是使用isEatingOutside()来判断是否需要在外就餐,isEatingOutside被称作钩子方法