php面向对象(四)

php中的重载技术

  通常面向对象语言的重载技术
  在一个类中有多个同名方法,每个方法的参数不同,这种现象称为重载。

  参数的不同:个数不同,类型不同,顺序不同。
  在php中,一个类中不可以定义多个同名方法(这是直接语法错误),因此php重载有特殊的意义;


  属性重载:如果使用一个不存在的属性,就会自动去调用预先设计好的某个方法;


      取值:$v1 = 对象->属性;======如果不存在======》自动调用类中的__get()方法
      赋值:对象->属性=值;======如果不存在========》自动调用类中的__set()方法
      判断是否存在:issrt(对象->属性;)==如果不存在=》自动调用类中的__isset()方法
      销毁:unset(对象->属性;)======如果不存在===》自动调用类中的__unset()方法

      //前提是类中要预先定义好这些 
      当使用一个对象(类)调用一个不存在的静态方法时,会自动去调用预先定义好的:__callStaric 方法,其中必须。带两个参数。

      __get(), __set(), __isset(), __unset(), __call(), __callstatic();这几个方法称为魔术方法。

    方法重载:如果使用一个不存在的方法,就会自动调用类中预先定义好的某个方法处理;

 

接口interface

  接口是抽象类的特殊例子:有接口常量,还有抽象方法。

  接口中只有最简单的特性信息:接口常量(就是常量),抽象方法(只有方法头,下级去实现)

  接口的作用:接口可以看做抽象类的更高层的抽象规范,不考虑接口常量的话,相当于给下级做什么事,怎么做下级自己去完成。

 

  有关类和对象的相关知识

    类的自动加载:不需要外部引用类文件,程序在需要一个类的时候自动去动态加载。

 

  使用__autoload魔术函数

      当程序需要一个类的时候,就回去调用该函数:该函数我们需要自己定义在其中,写好加载类文件的通用语句。

     

  

  使用__autoload魔术函数
    当程序需要一个类的时候,就回去调用该函数:该函数我们需要自己定义在其中,写好加载类文件的通用语句。
  使用sql_autoload_register函数
    用这个函数注册(声明)多个可以用来代替_autoload函数作用的函数:
      sql_autoload_regist("函数名1");
      sql_autoload_regist("函数名2");
      ... ...

    

 

转载于:https://www.cnblogs.com/sword082419/p/9151880.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值