PHP面向对象讲解

Posted 张凯::get("新技能")

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PHP面向对象讲解相关的知识,希望对你有一定的参考价值。

面向对象   类<------>对象

面向对象例题

理解:  减少 变量的重新定义    比如  变量前的  var   $    思路更加明确

class Yuan  ----后面不加()     创建类
{
    var $banjing; //圆类的一个成员变量   这个变量前面 加var $  z这个变量时   对象的
    
    //面积,成员方法
    function MianJi()
    {
        return 3.14*$this->banjing*$this->banjing;
    }
} this 指的是   引用这个类的 对象(实例)


$maxyuan = new Yuan();
$maxyuan->banjing = 10;    //banjing 前 不需要加任何变量符号符号  下面同样   只要在类里面有定义 就行

//造一个小圆
$minyuan = new Yuan();
$minyuan->banjing = 5;

echo $maxyuan->MianJi()-$minyuan->MianJi();
求两圆的面积差(面向对象方法)

面向过程 做题  之前 都是面向过程

//求两个圆之间阴影的面积
/*$r1 = 10;
$r2 = 5;
$mj = 3.14*$r1*$r1 - 3.14*$r2*$r2;
echo $mj;*/
面向过程求面积

类 与对象 的 区别 

1类:  模糊的  众多对象抽象出来的

2.对象: 实例   类中的一个 实例

在使用面向对象是   必须 先初始化(实例化) ---> 告诉计算机  它属于某一类

上题中 :   $maxyuan = new Yuan();    从圆类中   独立出一个   框架(实例 独立个体(对象))下面往里添加内容 (详见上题)

-------------------------面向对象:-----------------------------------------------------

访问修饰符
public 公有的,任何地方都可以访问
protected 受保护的,只能在该类或该类的子类中访问
private 私有的,只能在该类中访问

 

构造函数(构造函数在初始化的时候就运行了)
1.写法特殊:方法名特殊 :__construct
2.执行时间特殊:造对象的时候就执行  里面的this 指的是创建的对象 (实例化)

<?php
//  这里面的this 指的是 创建的的对象    
class YunSuan
{
    public $a;   //可以变成 默认值public $a=10;
    public $b;
    
    //构造方法
    function __construct($a1,$b1)
    {
        $this->a = $a1;
        $this->b = $b1;
    }
    
    //析构方法,在对象内存释放的时候执行
    function __destruct()
    {
        echo "该对象释放了";
    }
    
    private function Jia()
    {
        return $this->a+$this->b;
    }
    
    function Jian()
    {
        return $this->a-$this->b;
    }
    
    function Cheng()
    {
        return $this->a*$this->b;
    }
    
    function Chu()
    {
        return $this->a/$this->b;
    }
    
    
}

//造对象
$y = new YunSuan(10,5);

var_dump($y);
echo $y->Chu();
面向对象(构造函数)(析构函数)

以上是关于PHP面向对象讲解的主要内容,如果未能解决你的问题,请参考以下文章

VSCode自定义代码片段——JS中的面向对象编程

VSCode自定义代码片段9——JS中的面向对象编程

浅谈PHP面向对象编程(九设计模式)

php 面向对象三大特点:封装继承多态

php 面向对象三大特点:封装继承多态

C++:面向对象设计的继承性的相关编程代码讲解