博主信息
博文 55
粉丝 0
评论 0
访问量 61354
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
PHP面向对象-类与对象的关系
Bean_sproul
原创
1147人浏览过

<h3><span style="color: red">对象:</span>对象是人们要进行研究的任何事物,它不仅能表示具体的事物,还能表示抽象的规则、计划或事件。对象具有状态,一个对象用数据值来描述它的状态。对象还有操作,用于改变对象的状态,对象及其操作就是对象的行为。对象实现了数据和操作的结合,使数据和操作封装于对象的统一体中。</h3>

<h3><span style="color: red">类:</span>具有相同特性(数据元素)和行为(功能)的对象的抽象就是类。因此,对象的抽象是类,类的具体化就是对象,也可以说类的实例是对象,类实际上就是一种数据类型。类具有属性,它是对象的状态的抽象,用数据结构来描述类的属性。类具有操作,它是对象的行为的抽象,用操作名和实现该操作的方法来描述。</h3>

实例

<h3><span style="color: red">对象:</span>对象是人们要进行研究的任何事物,它不仅能表示具体的事物,还能表示抽象的规则、计划或事件。对象具有状态,一个对象用数据值来描述它的状态。对象还有操作,用于改变对象的状态,对象及其操作就是对象的行为。对象实现了数据和操作的结合,使数据和操作封装于对象的统一体中。</h3>

<h3><span style="color: red">类:</span>具有相同特性(数据元素)和行为(功能)的对象的抽象就是类。因此,对象的抽象是类,类的具体化就是对象,也可以说类的实例是对象,类实际上就是一种数据类型。类具有属性,它是对象的状态的抽象,用数据结构来描述类的属性。类具有操作,它是对象的行为的抽象,用操作名和实现该操作的方法来描述。</h3>

<hr>

<h3><span style="color: red">例子:</span></h3>

<?php 


class GirlFriend {//定义一个女朋友类
 
 /* 类中的成员{
	
	属性(变量) ---静态描述:姓名、性别、年龄、身高、体重、三维

    方法(函数) ---动态描述:说话、奔跑、可以生孩子、洗碗、}*/

    
    //--------------------------start---------------------------
    
    /*如果不需要特定的修饰,用var来声明成员属性
    如果需要特定的意义,
    public 一个公共的权限声明
    private 一个私有的权限声明
    static 静态的权限声明*/


    var $weight; //这是一个变量,用于储存体重

    public $name ='波多野结衣'; //public是访问控制 ,声明为共有的
    
    public $age =18; //public是访问控制 ,声明为共有的

    public $stature = [100,50,90]; //public是访问控制 ,声明为共有的
    
    //---------------------------end----------------------------

    public function getInfo($name='',$age=''){
          
      /*$this:当前类被实例化之后的对象, -> 对象成员访问符*/
      $this -> name =empty($name) ? $this->name:$name;
      $this -> age =($age == 0) ? $this->age:$age;
      return '姓名:'. $this->name . ',年龄:'. $this->age.'<br>';
    }
    

    public function getStature($stature = []){
      
      $this -> stature =empty($stature) ? $this->stature:$stature;
     
      return '胸围:'. $this->stature[0] . ',腰围:'. $this->stature[1] .',囤围:'. $this->stature[2] . '<br>';



    }
}

//实例化类,创建对象的过程

echo "<h3>/*实例化一个叫girlfriend1的对象*/</h3>";
$girlfriend1 = new GirlFriend();/*实例化一个叫girlfriend1的对象*/

var_dump($girlfriend1);//打印girlfriend1的对象,可以知道它是一个object
echo '<hr>';

echo $girlfriend1->name,'<br>'; //访问类中成员的属性,单一的访问

echo $girlfriend1->getInfo(),'<br>';//访问一个方法函数,输出多个成员属性

echo $girlfriend1->getInfo('小泽玛丽',20),'<br>';//访问一个方法函数,并更新输出
echo $girlfriend1->getStature(),'<br>';//访问一个方法函数,并把数组输出
echo $girlfriend1->getStature([100,100,100]),'<br>';//访问一个方法函数,并更新数组输出

echo "<h3>/*实例化一个叫girlfriend2的对象*/</h3>";
$girlfriend2 = new GirlFriend();/*实例化一个叫girlfriend2的对象*/
echo $girlfriend2->weight="45kg";//访问成员的属性,并赋值


?>

运行实例 »

点击 "运行实例" 按钮查看在线实例

批改状态:未批改

老师批语:
本博文版权归博主所有,转载请注明地址!如有侵权、违法,请联系admin@php.cn举报处理!
全部评论 文明上网理性发言,请遵守新闻评论服务协议
0条评论
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号

  • 登录PHP中文网,和优秀的人一起学习!
    全站2000+教程免费学