PHP面向对象讲解

时间:2023-03-08 23:48:19
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(,); var_dump($y);
echo $y->Chu();

面向对象(构造函数)(析构函数)