PHP面向对象讲解
2024-10-01 12:36:18
面向对象 类<------>对象
面向对象例题
理解: 减少 变量的重新定义 比如 变量前的 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();
面向对象(构造函数)(析构函数)
最新文章
- Android Handler消息传递机制
- c#设计模式-工厂方法
- PHP的几个常用加密函数(转载 https://jellybool.com/post/php-encrypt-functions)
- 函数rec_get_nth_field_offs_old
- Android学习笔记(一)Android应用程序的组成部分
- thenjs的应用
- RegExp类型(正则表达式)
- 豹哥嵌入式讲堂:ARM开发中有用的文件(1)- source文件
- 东软实习<;3>;
- 19.3 Table 1-2.S3C2440A 289-Pin FBGA Pin Assignments (Sheet 4 of 9) (Continued)
- JSon与字符串的转换
- 20165337岳源 预备作业3:Linux安装及命令入门
- 微信小程序弹出层点击穿透问题
- 494. Target Sum
- 使用MultipartFile上传文件
- grafana worldPing插件
- Web大前端面试题-Day11
- ATM开学测试(未完成)
- zsh: command not found cnpm,gulp等命令在zsh终端上报错的问题
- ESB的编程模型(场景)
热门文章
- 别出心裁的Linux命令学习法
- mysql数据库表结构导出
- 响应式疑惑? CSS单位研究
- MySQL远程连接丢失问题解决方法Lost connection to MySQL server at ‘reading initial communication packet’, system error: 0
- AOPR破解的密码复制的方法
- 解决:Windows 开机弹出AotuIt ERROR 错误
- Android网络文件下载模块整理
- 微信小程序之明源商城系列-01-商城介绍及开发准备
- python作用域和多继承
- 解决Spring MVC @ResponseBody返回中文字符串乱码问题