1. 首页
  2. 编程语言
  3. PHP
  4. PHP 5.0对象模型深度探索之绑定

PHP 5.0对象模型深度探索之绑定

上传者: 2021-11-11 05:22:55上传 PDF文件 69.05 KB 热度 14次

  在计算机语言中有两种主要的绑定方式―静态绑定和动态绑定。静态绑定发生于数据结构和数据结构间,程序执行之前. 静态绑定发生于编译期, 因此不能利用任何运行期的信息。在面向对象的代码中,动态绑定意味着决定哪个方法被调用或哪个属性被访问,将基于这个类本身而不基于访问范围。  Public和protected成员的动作类似于PHP的前几个版本中函数的动作,使用动态绑定。如果是一个普通的user,PHP调用User::isAuthorized会返回FALSE.如果是一个AuthorizedUser的实例,PHP调用AuthorizedUser::isAuthorized,将允许deleteUser顺利执行。为了回答这个问题, 你需要回忆一下为什么需要有private成员.什么时候用它们来代替protected成员是有意义的?一定的情况下需要private方法或变量,例如当你确信你不想允许子类改变父类中的某个特定的部份。

用户评论