【www.gdgbn.com--面向对象编程】

 

第七章(11)面向对象详解_对象的串行化和反串行化
串行化就是把对象转化成二进制的字符串 (要串行化的对象名称).
反串行化就是把二进制化字化为对象 unserilize(要反串行化的对象名称).
符串转串行化标准:
$r1=new Ren("张三",20,"男");
$str=($r1<要串行化的对象>);
$file=fopen("tmp.txt"<串行化保存到的文件地址>,"w"<写>);
fwrite($file,$str);
fclose($file);
反串行化标准:
include"ren.php"<将串行化对象的php移入反串行化的php中>;
$file=fopen("tmp.txt"<要反串行化的文件地址>,"r"<读>);
$str=fread($file,filesize("tmp.txt"<读的长度,填文件地址就是文件有好长就读好长>));
fclose($file);
$r=unserilize($str);
$r->shuohua();
在什么情况下将对象串行化:
1.对象在网络中传输的时候.
2.将对象存入文件或数据库的时候.
__sleep(){$arr=array(要串行化的属性);return $arr;}串行化部分属性时自动调用的方法.
__wakeup()反串行化时自动调用的方法<可以将串行化的属性在反串行化时初始值>.
     第七章(12)面向对象详解_抽象方法和抽象类
抽象方法:在类里面没有方法体的方法就是抽象方法.
abstract<抽象方法关键字> function 方法名();.
抽象类:抽象类不能实例化对象的,此类就是抽象类,抽象类不能实例化 对象,就要在此类前面加 abstract来修饰.
抽象类的用途:就相当于一个规范,如果要抽象类里面的原有的功能实现就必须以抽象类作为父类做一个子类,然后覆盖完整抽象类里面的抽象方法,才能使抽象类里面的功能一一实现.

本文来源:http://www.gdgbn.com/jsp/18747/