zoukankan      html  css  js  c++  java
  • 模板模式

     1 <?php
     2 
     3 /**
     4  * 模板方法模式又叫模板模式,该模式在一个方法中定义一个算法的骨架,而将一些步骤延迟到子类中。
     5  * 模板方法使得子类可以在不改变算法结构的情况下,重新定义算法中的某些步骤。
     6  * 
     7  * 由于模板定义了子类的行为,所以是行为型模式
     8  */
     9 
    10 abstract class Game
    11 {
    12     abstract public function initialize();
    13     abstract public function start();
    14     abstract public function end();
    15 
    16 
    17     final public function play()
    18     {
    19         $this->initialize();
    20         $this->start();
    21         $this->end();
    22     }
    23 }
    24 
    25 
    26 class BasketBall extends Game
    27 {
    28     public function initialize()
    29     {
    30         echo "<br/>BasketBall initialize";
    31     }
    32 
    33     public function start()
    34     {
    35         echo "<br/>BasketBall start";
    36     }
    37 
    38     public function end()
    39     {
    40         echo "<br/>BasketBall end";
    41     }
    42 }
    43 
    44 class FootBall extends Game
    45 {
    46     public function initialize()
    47     {
    48         echo "<br/>FootBall initialize";
    49     }
    50 
    51     public function start()
    52     {
    53         echo "<br/>FootBall start";
    54     }
    55 
    56     public function end()
    57     {
    58         echo "<br/>FootBall end";
    59     }
    60 }
    61 
    62 
    63 $b = new BasketBall();
    64 $b->play();
    65 
    66 $f = new FootBall();
    67 $f->play();
    View Code
  • 相关阅读:
    1.Mybatis的全局配置mybatis-config.xml
    01淘淘商城项目:项目Maven工程搭建
    Connection timed out: connect; Communications link failure
    启动maven项目的配置
    PLSQL 触发器概念
    Git 概念&常用命令
    Git与svn的区别 & Git的工作流程
    Redis 是如何存储的
    Redis 概念,常用命令
    idea 快捷键
  • 原文地址:https://www.cnblogs.com/hangtt/p/6262041.html
Copyright © 2011-2022 走看看