星联网络专注帝国CMS二次功能插件开发-精品网站模板站长代码素材

  • 最近更新
  • 模板:33
  • 记录:12641|
  • 插件:52|
  • 工具:4|
  • 代码:8|
  • 评论:0

对PHP对象与类的概念以及相互关系理解

前言

本文重点解决对PHP对象与类的概念以及相互关系理解问题,希望能够帮助到你

先来看一段简单的代码:
 
<?php
 
class Person{
 
    public $name;
    public $age;
    public $sex;
 
    public function who()
    {
        echo $this->name." is ".$this->age." years old and is my ".$this->sex;
    }
 
}
 
class man{
    public $height;
    public $where;
 
    public function __construct($h,$w){
        $this->height = $h;
        $this->where = $w;
    }
}
 
$luyaran = new Person();
$luyaran->name = "luyaran";
$luyaran->age = "27";
$luyaran->sex = "love";
 
$luyaran->who();
echo "<br>";
$man = new man($luyaran,'142');
echo serialize($luyaran);
$luyaran_arr = array('name'=>'luyaran','age'=>'27','sex'=>'love');
echo "<br>";
echo serialize($luyaran_arr);
echo "<br>";
var_dump($man);
echo "<br>";
echo serialize($man);
输出结果如下:
 
 
仔细看下输出结果,我们可以发现,我们序列化之后的对象,都会附带着所属的类的名称。那么这个类名,有什么用处呢???
 
它能够保证,当前对象在执行所属的类的方法(也就是这个对象自己所能执行的方法)时,可以正确的找到类的方法所在的代码空间(也就是这个对象它所拥有的方法存储在的类里)。
 
另外呢,当一个对象的实例变量,引用其它对象时,我们在序列化该对象时,也会对这个对象所引用的对象,进行实例化。
 
好,咱也不废话,来总结下,对象和类的概念以及之间的相互关系:
 
类是定义一系列属性和操作的模板,而对象,就是把属性进行实例化,完事交给类里面的方法,进行处理
对象的本质,就是数据,其本身不包含方法,但是其内部有一个指针,会指向一个类,而在这个类里面,是可以包含方法的
类里面的方法描述不同的属性,因而,会产生不同的表现或者结果
类和对象是不可分割的,有对象,就必定有一个类是和它相对应的,但是,由标量进行强制转化而产生的对象由PHP中,一个称为“孤儿”的stdClass类,来收容它
对于我们而言呢,如果需要设计或者创建一个类,那么我们就要从客观世界中,抽象出来一套规律,总结出这类事物的共性,并且让我们的这个类,可以与其它类,可以进行区分就好了。
 
我们区分类的依据就是其中的属性和方法,而区分类的具体方法,就是实例化一个对象。
 

本网刊登的文章均仅代表作者个人观点,并不代表本网立场。文中的论述和观点,敬请读者注意判断。

本文地址:http://www.xlkjgs.com/notes/html/580.html

以上内容由本站整理呈现,请务必在转载分享时注明本文地址!如对内容有疑问,请联系我们,谢谢!

星联网络

星联网络是中国最具实战的互联网创业者的知识服务商,这里有互联网行业动态,网络推广,SEO优化,SEM优化,ESC配置,行业经验分型,互联网项目,微信营销、淘宝客赚钱、新媒体营销、京东运营、跨境电商等众多互联网营销知识分享

站长运营站长必备网站运营之道才能长久发展