php基础--快速复习记录13-类与对象(续)

类与对象(续)

final 关键字 标志final的方法不能被重写,标志为final的类不能被继承

对象的克隆 对象的简单赋值是不能创造一个相同的对象,其实还是同一个引用,需要使用clone

  • 浅克隆 属性对象不会复制
  • 深克隆 手动重写__clone()来手动克隆属性对象

    对象的比较

  • == 属性值相等,且同属一类
  • ===同一引用,单例模式判断

    类型约束

    PHP 5 可以使用类型约束。函数的参数可以指定必须为对象(在函数原型里面指定类的名字),接口,数组(PHP 5.1 起)或者 callable(PHP 5.4 起)。不过如果使用 NULL 作为参数的默认值,那么在调用函数的时候依然可以使用 NULL 作为实参。
    如果一个类或接口指定了类型约束,则其所有的子类或实现也都如此。
    类型约束不能用于标量类型如 int 或 string。Traits 也不允许。

    后期静态绑定

    额看了官方给的说法,总结起来就是__CLASS__self是定义的类,static是调用类,

    后期静态绑定的解析会一直到取得一个完全解析了的静态调用为止。另一方面,如果静态调用使用 parent:: 或者 self:: 将转发调用信息。
    没看懂。。。

    引用和对象

    我自己之前也是以为对象默认是引用赋值的但其实不是真实这样的,只是看起来像而已。。

    PHP 的引用是别名,就是两个不同的变量名字指向相同的内容。在 PHP 5,一个对象变量已经不再保存整个对象的值。只是保存一个标识符来访问真正的对象内容。 当对象作为参数传递,作为结果返回,或者赋值给另外一个变量,另外一个变量跟原来的不是引用的关系,只是他们都保存着同一个标识符的拷贝,这个标识符指向同一个对象的真正内容。
    所以其实普通如$a = $b//$b对象 二者存的实际是一个标识符的拷贝而$a = &$b//$b对象这才是真的引用。不过了解下就可以了

    对象的序列化与反序列化

    注意自动加载以及__sleep() __wakeup()使用

转载于:https://www.cnblogs.com/hujiejeff/p/6798405.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值