php面向对象实践,【技术产品】PHP中的面向对象实践-基本实践案例
PHP中的面向对象实践-基本实践
(一)、基本实践
一、类的概念
一、共同点:
都有相同的属性
都有相同的方法
二、不同点:
具体的值是不一样的
三、总结:他们都是一类的对象
说到类,现在来说说类的概念
1) 类定义
-我们说物以类聚,人以群分,把具有相似特性的对象归类到一个类中
所以我们去看对象的时候,试着去对比他们的属性和方法,如果他们的属性和方法都很相似,我们就可以把他们归到一类
-类定义了这些相似的对象都拥有相同的属性和方法
举例:一个NBA球员就是一个类的定义,它规定了只要是一个NBA球员,它就一定会具有:年龄,姓名,身高,体重,所在球队,球员号码
然后他们也会具有相同的技能:
但是问题是,这个类里面有定义具体的身高吗,有具体的姓名吗,有具体的体重吗,都没有,但是如果我们把这些属性都写上去以后,是不是就是成为了具体的一个对象
这就是类和对象的关系,具体点就是,类是相似对象的描述,这个称之为类的定义,类是所有这些相似对象的蓝图或者原型
比如詹姆斯这个对象怎么来的,就是把这个类的属性值设置好就可以了
类的对象就是类的一个实例(Instance),这个操作也叫做类的实例化
比如詹姆斯,乔丹,科比都是NBA球员这个类的实例,实例的他们的这个过程就叫做类的实例化
类我们可以了解为,它就是一个空架子,它只是定义了对象怎么分,而对象的话它就定义了,具体的值,必须要把所有的属性值都写具体才行
补充一个概念:我们把类的对象和方法都统称为类成员
二、实例化的概念
1) 类的实例化定义
就是通过类创建一个具体的对象,这个过程就是类的实例化,相当于就是把这个空架子填满
举例:比如通过NBA球员这个类我们创建了詹姆斯,科比,乔丹,这其中就是把这个NBA球员类实例了3次
总结:类只有一个,但是它可以被多次实例化,得到多个具体的对象
Tip:具体怎么实现,我们之后会在代码里进行具体的演示
2)类的实例化
2) 举例:以乔丹为例
左边是类,没有数据,右边是乔丹,那么要实例化它怎么实例化呢,就是直接把这些姓名,身高,体重,所在球队,球员号码这些值填写具体,那么乔丹这个对象就实例出来了
Tip:实例化,可以理解为 将类 化作成一个实际的例子
三、具体案例
1) 案例学习目标
1. 如何定义一个类
2. 如何实例化一个类
3. 如何调用类的属性和方法
2) 具体见以下代码<?php
/***
* 案例目标:
* 1.类的定义
* 2.类的实例化
* 3.属性的赋值
* 4.方法的调用
*
*/
/***定义一个类,类的名字叫NbaPlayer(中文=NBA球员)
* 提示:
* 1.定义类的过程:我们首先以class开始,然后写上类 名称:NbaPlayer,最后要写上一对{}
* 2.类的名字通常首字母要大写
* 3
*
***/
class NbaPlayer{
//定义属性
public $name = "";
public $height = "";
public $weight = "";
public $team = "";
public $playerName = "";
//定义方法
//定义跑的方法
//提示:
//方法定义的过程:
//1.写上方法的类型,public,表示公共的方法,可以被外部直接调用
//2.写上function
//3.定义方法的名称,然后写上一对(),最后{}结尾
//总结:
//方法定义和之前js中函数的定义是一样的,只是类中的方法多了一个public
public function run(){
//里面的代码我们称之为业务逻辑
echo "跑步
";
}
//定义跳跃方法
public function jump(){
echo "跳跃
";
}
//定义运球方法
public function dribble(){
echo "运球
";
}
//定义投篮的方法
public function shoot(){
echo "投篮
";
}
//定义扣篮方法
public function dunk(){
echo "扣篮
";
}
//定义传球
public function pass(){
echo "传球
";
}
}
//类到对象的实例化
/*总结:
1、类的实例化过程= 通过new 类名() 即可完成一个类的实例化过程
*/
//1.创建乔丹
$jordan = new NbaPlayer();//类的实例化
//类赋值
$jordan->name = "乔丹";
$jordan->height = "1.98米";
$jordan->weight = "98公斤";
$jordan->team = "公牛";
$jordan->playerName = "23";
//输出对象值
print_r("乔丹名称:".$jordan->name."
");
print_r("乔丹身高:".$jordan->height."
");
//总结:通过->可以调用对象里的属性
echo "
";
//输出对象方法
$jordan->dribble();
$jordan->pass();
//总结:通过->符号可以调用对象的方法
?>
php面向对象实践,【技术产品】PHP中的面向对象实践-基本实践案例相关推荐
- python面向对象有什么用_Python 中的面向对象没有意义
许多人都在抨击面向对象,虽然我不认为他有什么问题,但我觉得至少在Python 中没必要. 近来,许多人都在抨击面向对象,虽然我不认为面向对象本身有什么问题,但我觉得至少在 Python 中没这个必要. ...
- 基于“遥感+”蓝碳储量估算、红树林信息提取实践技术应用与科研论文写作
目录 "遥感+"助推蓝碳生态系统碳储量调查简介 第一章 高光谱遥感数据介绍及预处理 第二章 光谱特征分析与参量提取 第三章 高光谱遥感数据分类与制图 第四章 GEE数据处理介绍 第 ...
- Windows系统下基于开源软件的多物理场仿真实践技术
目录 专题一:多物理场有限元方法 专题二:前处理 专题三:单物理场举例 专题四:多物理场耦合 专题五:编程进阶 随着计算机技术的发展,计算机仿真技术日益成为继实验和理论之后的第三种重要研究和设计手段. ...
- 17、Java中的面向对象的编程思想
Java中的面向对象的编程思想 作者:韩茹 公司:程序咖(北京)科技有限公司 程序咖:IT职业技能评测平台 网址:https://www.chengxuka.com 任务 1. 面向对象 2. 面向过 ...
- 三维声技术在赛事直播中的应用,TWS耳机中音频技术落地实践,通话降噪算法落地应用及挑战...
三维声技术在赛事直播中的应用 Topic <三维声技术在赛事直播中的应用探析> 韩建 咪咕文化科技有限公司 资深音频技术专家 作为元宇宙重要的技术基石之一,三维声技术也随着元宇宙概念的走 ...
- 信息工程类 计算机网络技术,电子信息工程中计算机网络技术的实践
摘要:随着社会信息化.网络化的快速发展,计算机网络技术成为全球和社会最具影响力的技术之一.它所涉及的范围非常广泛,几乎涵盖了所有的社会领域以及经济领域,在民生以及军事等方面都得到了很好的应用,所以,它 ...
- 长时间序列遥感数据处理及在全球变化、物候提取、植被变绿与固碳分析、生物量估算与趋势分析等领域中的实践技术应用
[查看原文]长时间序列遥感数据处理及在全球变化.物候提取.植被变绿与固碳分析.生物量估算与趋势分析等领域中的实践技术应用 植被是陆地生态系统中最重要的组分之一,也是对气候变化最敏感的组分,其在全球变化 ...
- 基于Python长时间序列遥感数据处理及在全球变化、物候提取、植被变绿与固碳分析、生物量估算与趋势分析等领域中的应用实践技术
查看原文>>>基于Python长时间序列遥感数据处理及在全球变化.物候提取.植被变绿与固碳分析.生物量估算与趋势分析等领域中的应用实践 目录 专题一.长时序遥感产品在全球变化/植被变 ...
- 类的扩充 js中面向对象的技术
类的扩充 ps,纠正之前的一个错误,之前直接重新提交函数的,而重新提交函数表明这是讲之前的函数清空,重新引用,注意:这样的话已经不存在引用关系,所以这样对于类的修改,不会影响其原先继承的修改 类的扩充 ...
最新文章
- 一道面试题:用shell写一个从1加到100的程序
- 探寻繁杂定时任务的解决方案:分布式任务调度系统
- explain 之 id
- 为什么离开学校后,学习能力直线下降?
- SpringMVC 通过post接收form参数或者json参数
- Python Flask实现修改和删除数据
- 如何利用Caffe训练ImageNet分类网络
- A Simple but Tough-to-Beat Baseline for Sentence Embeddings阅读笔记
- nRF52840 SAADC单通道/多通道采集分析
- 【highcharts】highcharts(highmaps)实现疫情地图(一看就会篇)
- 各位想不想知道,360的保镖,在保护什么?
- 一招彻底解决win10开机桌面及任务栏卡死问题
- firefox不能正常下载文件
- 安静!听听AI眼中岛国老师的声音~
- 滴滴夜莺Nightingale01-架构详解
- 《Microduino实战》——1.4 开源硬件
- 飞信消息通道服务器,和飞信_服务中心_中国移动通信
- FT2232H编程流程分析
- excel最强教科书电子版_Excel最强教科书(完全版全彩印刷)
- MyBatis的关联映射之 一对一(嵌套查询/嵌套结果)