已采纳回答 / daihao晓飞3848636
$car = new Car();unset($car);// 手动解构echo "hello";应该是程序没有完结时这个对象还一直被占用吧
2016-09-11
已采纳回答 / 红曼巴
在PHP前面的版本构造函数不是用的__construct而是与类名相同的方法作为构造函数。可能是高版本要兼容低版本,所以使用与类名相同的方法作为构造函数仍然可用。但是不建议使用了。
2016-09-11
$this->speed+=10;中$this->speed是一个整体,所以$this->speed+=10;可以写成$this->speed=$this->speed+10;而不是$this->speed=speed+10;
2016-09-11
最新回答 / _Linl
$obj = new Car() //重新创建一个Car的对象$obj->name = $this->name; // 将本身的name属性的值 赋给 新对象$obj的name。这样在调用clone的时候,不仅获取了一个新的对象,连这个对象里面的name也会一样。可以理解为克隆一个人,只是克隆了这个人的身体,现在我需要连这个克隆人的名字也和被克隆的对象一样,那么我就让这个克隆人的名字等于被克隆的对象的名字。
2016-09-11
对象序列化,可以通过serialize方法将对象序列化为字符串,用于存储或者传递数据,然后在需要的时候通过unserialize将字符串反序列化成对象进行使用。
OC 的序列化保存 自定义对象, 和copy 与mutableCopy 与容器copy 等等
OC 的序列化保存 自定义对象, 和copy 与mutableCopy 与容器copy 等等
2016-09-10
如果构造函数定义成了私有方法,则不允许直接实例化对象了,这时候一般通过静态方法进行实例化,在设计模式中会经常使用这样的方法来控制对象的创建,比如单例模式只允许有一个全局唯一的对象。
单例的设计模式
singleInstance
单例的设计模式
singleInstance
2016-09-10
$car = new Car(); //实例化时会调用构造函数
echo '使用后,准备销毁car对象 \n';
unset($car); //销毁时会调用析构函数
类似于 OC的 ARC ,在一个运行循环结束的时候 从缓存池中回收内存
echo '使用后,准备销毁car对象 \n';
unset($car); //销毁时会调用析构函数
类似于 OC的 ARC ,在一个运行循环结束的时候 从缓存池中回收内存
2016-09-10