zoukankan      html  css  js  c++  java
  • PHP中的trait

    PHP中的trait

    一、前言

           自PHP 5.4.0起,PHP 实现了代码复用的一个方法,称为 trait。trait其字面意思是"特性"、"特点"。使用Trait关键字,可以为PHP中的类添加新的特性。

           trait 是一种为类似 PHP 的单继承语言而准备的代码复用机制。在PHP中,只能实现单继承,而trait则避免了这点。

           PHP中的traits可以理解为一组能被不同的类都能调用到的方法集合,但Traits不是类!不能被实例化。

    二、实现代码 

           Log.php

     

            Publish.php

     

            Answer.php

     

           总结:继承的方式虽然也能解决问题,但其思路违背了面向对象的原则,显得很粗暴;多态方式也可行,但不符合软件开发中的DRY(Don't Repeat Yourself)原则,增加了维护成本。而Trait方式则避免了上述的不足之处,相对优雅的实现了代码的复用。

    三、优先级

           Trait应用中的优先级如下:

           1)来自当前类的成员覆盖了 trait 的方法

           2)trait 覆盖了被继承的方法

          总结:类成员优先级为: 当前类>Trait>父类

    参考链接:

    https://segmentfault.com/a/1190000008009455#item-1-3

  • 相关阅读:
    盘的转——使用缓动函数完成动画
    espnet环境配置(window)
    2021.9.8 Hadoop集群
    2021.9.7 开学第一课
    RS-422与RS-485
    70 进程创建的优化设计 下
    RGB液晶接口
    matlab2018a安装激活教程
    sed初级教程
    centos无法添加默认网关
  • 原文地址:https://www.cnblogs.com/hld123/p/12684192.html
Copyright © 2011-2022 走看看