PHP学习笔记——类

@类的静态方法和静态属性
    #静态方法是以类作为作用域的函数。静态方法不能访问这个类中的普通属性。但可以访问静态属性。
    #在类的外部访问静态方法和属性    
        ##【格式】类名::属性、类名::方法
    #在当前类中访问静态方法和属性
        ##【格式】self::属性、self::方法
 
@抽象类(abstract class)
    #用关键字abstract来声明
    #是不能被直接实例化的类
    #抽象类可以理解为一套约束子类的规则。
    #抽象类中只定义(或部分实现)子类需要的方法。子类可以继承它并且通过实现其中的抽象方法。
    #大多数情况下,抽象类至少包含一个抽象方法。抽象方法用abstract关键字声明。
    #例:
            abstract  class ShopProductWriter {
                protected $products = array();
                abstract public function write();
            }
    
@接口
    #用关键字interface来声明
    #使用implemnets关键子来实现接口
    #任何实现接口的类都要实现接口中所定义的所有的方法
    #例
        interface Chargeable {
            public function getPrice();
        }
 
        class ShopProduct implements Chargeable{
                //...
                  public function getPrice(){
                    return ($this->price - $this->discount);
                }
        }
 
@延迟静态绑定:static关键字
    #只能用于静态属性或静态方法
    #延迟绑定
    #例
        abstract class DomainObject {
            public static function create(){
                return new static();
            }
        }
 
        class User extends DomainObject{
        }
 
        class Document extends DomainObject{
        }
 
        print_r(Document::create());
 
@Final类和方法
    #final类不能有子类,final方法不能被覆写。
    #【格式】 final  class 类名{
                    }
 
@魔术方法
    #属性重载
        ##__get($property)                    访问未定义属性时被调用
        ##__set($property, $value)        给未定义的属性赋值时被调用
        ##__isset($property)                  给未定义的属性调用isset()时被调用
        ##__unset($property)                给未定义的属性调用unset()时被调用
        ##__call($method, $arg_array)  调用未定义的方法时被调用
    #__construct()  构造方法
    #__destruct()   析构方法
    #方法重载
        ##__call()
        ##__callStatic()
    #序列化与反序列化
        ##__sleep()
        ##__wakeup()
    #__clone()        对象复制
    #__toString()    类变字符串
    #__invoke()        类变函数
    #__set_state()    导出类
    #__debuginfo()    调试打印  
 
@反射API
    #指在PHP运行状态中,扩展分析PHP程序,导出或提取出关于类、方法、属性、参数等的详细信息,包括注释。
    #可以做自动加载插件,自动生成文档,甚至可用来扩充PHP语言。
    #Reflection                      为类的摘要提供静态函数export()
    #ReflectionClass              类信息和工具
    #ReflectionMethod         类方法信息和工具
    #ReflectionParameter     取回了函数或方法参数的相关信息
    #ReflectionProperty        类报告了类的属性的相关信息    
    #ReflectionFunction        类报告了一个函数的有关信息
    #ReflectionException      错误类
    #ReflectionExtension      扩展信息
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值