百分百源码网-让建站变得如此简单! 登录 注册 签到领金币!

主页 | 如何升级VIP | TAG标签

当前位置: 主页>网站教程>网页制作> php类和对象的关系
分享文章到:

php类和对象的关系

发布时间:09/01 来源:未知 浏览: 关键词:

  面向对象(Object Oriented,OO)是软件开发办法。面向对象的概念和利用已超过了程序设计和软件开发,扩展到如数据库系统、交互式界面、利用构造、利用平台、分布式系统、网络治理构造、CAD技术、人工智能等领域。下面我们为大家介绍一下php中类与对象的关系。

引荐教程:PHP视频教程

一、类和对象的关系

  类的实体化结果是对象,而对象的抽象就是类。在开发历程中,我们平常都是先抽象(梦想)出一个类,再用该类去创立对象(实现梦想的内容)。在程序中,直接使用的是我们(实现梦想)的对象,而不是抽象(梦想)的类。

二、面向对象和面向历程

1、什么是面向历程

  面向历程就比如一个人 本人洗衣服、做饭,什么事情都是本人解决

2、什么是面向对象

  面向对象就是阿谁人有了对象,让对象去洗衣服、做饭。

三、怎样抽象一个类

class 类名{
     成员属性:
        姓名、性别、年龄、身高、体重
     成员办法:
        说话、走路、学习、吃饭、开车
   }

  所有的类都是从成员属性和成员办法这两方面去声明,属性和办法都是类中的成员,所以属性又叫做成员属性,办法又叫做成员办法

1、成员属性 -->特点

  在对象中直接声明变量就称为成员属性,可以在类中声明多个成员变量,即对象中可以有多个成员属性

class Person{
    var $name;    //声明第一个成员属性,用于贮存人的名字
    var age;      //声明第一个成员属性,用于贮存人的年龄
    var $sex;     //声明第一个成员属性,用于贮存人的性别
  }

2、成员办法 -->功效

class Person{
    var $name;    //声明第一个成员属性,用于贮存人的名字
    var $age;      //声明第一个成员属性,用于贮存人的年龄
    var $sex;     //声明第一个成员属性,用于贮存人的性别
    function say(){   //声明第一个办法
        echo '人在说话';   //定义人说话的功效
    }
    function run(){   //声明第二个办法
        echo '人在跑步';   //定义人跑步的功效
    }
    function eat(){   //声明第三个办法
        echo '人在吃饭';   //定义人吃饭的功效
    }
}

  对象就是把相关的属性和办法组织在一起。其中成员属性和成员办法都是可以选的,可以只要成员属性,也可以只要成员办法,也可以没有成员。

四、实例化对象

一个类可以声明多个对象,让对象去拜访成员属性和成员办法

class Person{
    var $name;    //声明第一个成员属性,用于贮存人的名字
    var $age;      //声明第一个成员属性,用于贮存人的年龄
    var $sex;     //声明第一个成员属性,用于贮存人的性别
    function say(){   //声明第一个办法
        echo '人在说话';   //定义人说话的功效
    }
    function run(){   //声明第二个办法
        echo '人在跑步';   //定义人跑步的功效
    }
    function eat(){   //声明第三个办法
        echo '人在吃饭';   //定义人吃饭的功效
    }
}
// 实例化对象
$sqyy = new Person();
//成员属性赋值
$sqyy -> name = "伊川";
$sqyy -> sex = "男";
$sqyy -> age = 26;
//拜访对象中的成员办法
$sqyy->eat();

五、非凡的对象援用 "$this"

  上面的示例中,我们是实例化一个对象之后再给成员属性赋值和拜访成员办法的。那么 $this也可以在成员办法中使用,代表的是当前的这个对象

成员办法调取前的对象是谁,$this就代表谁

class Person{
    var $name;   
     function info(){     
        $this ->name = "SQYY";
    }
  }

六、结构办法与析构办法

1、结构办法

  结构办法是对象创立完成后第一个被对象主动调取的办法,会初始化这个对象,当使用new关键字实例化对象时会主动触发。

<?php
    class Person{
        //下面是声明人的成员属性,都是没有初始值的,在创立对象时,使用结构办法赋给初始值
        var $name;   //定义人的名字
        var $sex;    //定义人的性别
        var $age;    //定义人的年龄
        
        function __construct($name="SQYY",$sex="男",$age=1){
            $this -> name = $name;  //在创立对象时,使用传入的参数$name为成员属性 $this->name赋初值
            $this -> sex = $sex;    //在创立对象时,使用传入的参数$sex为成员属性 $this->sex赋初值
            $this -> age = $age;    //在创立对象时,使用传入的参数$sex为成员属性 $this->age赋初值
        }
    
        //下面声明人的成员办法
        function say(){
            echo "我的名字:" .$this ->name. " ,性别:" .$this -> sex ."  年龄" .$this ->age. "。<br>";
        }
    }
    
    $person1 = new Person();                   //创立对象$person1时会主动施行结构办法,默许传参
    $person2 = new Person('张三');             //创立对象$person2时会主动施行结构办法,传入第一个参数,其他默许传参
    $person3 = new Person('李四','男');        //创立对象$person3时会主动施行结构办法,传入前两个参数,其他默许传参
    $person4 = new Person('王五','女','20');   //创立对象$person4时会主动施行结构办法,传入所有参数
    
    $person1 ->say();
    $person2 ->say();
    $person3 ->say();
    $person4 ->say();
?>

运转结果

php31.png

2、析构办法

  对象在烧毁此前最后一个被对象主动调取的办法,先创立 传入变量后烧毁

<?php 
    header('Content-type:text/html;charset=utf-8');
    // 定义一个汽车的类
    class car{
        // 成员属性
        public $name;
        public $color;

        //结构办法
        public function __construct($name,$color){
            $this->name = $name;
            $this->color = $color;
            echo "你创立了".$this->name.'<br>';
        }

        // 析构办法
        public function __destruct(){
            echo "你烧毁了".$this->name.'<br>';
        }
    }

    // 实例化对象
    $hanma = new car('悍马','粉色','H2');
    $bmw = new car('宝马','红色','X7');
    $benchi = new car('奔腾','黑色','s600');

    // unset($bmw);
    $bmw = '1111';
 ?>

运转结果

php32.png

假如我们不援用变量,创立完对象之后就会烧毁。

<?php 

    header('Content-type:text/html;charset=utf-8');

    // 定义一个汽车的类
    class car{
        // 成员属性
        public $name;
        public $color;

        //结构办法
        public function __construct($name,$color){
            $this->name = $name;
            $this->color = $color;
            echo "你创立了".$this->name.'<br>';
        }

        // 析构办法
        public function __destruct(){
            echo "你烧毁了".$this->name.'<br>';
        }
    }

    // 实例化对象
    new car('悍马','粉色','H2');
    new car('宝马','红色','X7');
    new car('奔腾','黑色','s600');

 ?>

运转结果

php33.png

以上就是php类和对象的关系的具体内容,更多请关注百分百源码网其它相关文章!

打赏

打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

百分百源码网 建议打赏1~10元,土豪随意,感谢您的阅读!

共有152人阅读,期待你的评论!发表评论
昵称: 网址: 验证码: 点击我更换图片
最新评论

本文标签

广告赞助

能出一分力是一分吧!

订阅获得更多模板

本文标签

广告赞助

订阅获得更多模板