PHP学习之-面向对象
1、什么是对象
"世界万物皆对象",一切可以被抽象出来的东西都是对象。像花,草。看不到的"概念"都是对象。
2、对象的基本组成
a.属性。对象的描述。
b.方法。对象的行为。
例子:NBA球星会打篮球 。 球星的身高体重就是他的属性,打篮球这个行为就是它的方法。
3、对象的特征
a.独特性,每一个对象都是独一无二的。
b.对象是一个特定的事务,他有一定的职能。
c.对象是可以重复使用的。
4、面向对象的实质
面向对象就是把生活中需要解决的的问题都用对象的方式进行存储。
-属性
-方法
独享直接通过方法的调用来来实现互动
-方法
5、面向对象的基本思路。
将万物通过对象的方式去描述
a.识别对象。
-任何实体都可以被识别为一个对象。
b.识别对象的属性
-对象烈面存储的数据被是被为属性
-对于不同的业务逻辑,关注的数据不同对象里面存储的属性也是不同
c.识别对象的行为
-对象自己属性数据的改变
-对象和外部的交互
总结:将一个实体识别为一个对象,通过属性描述它的特征,行为来描述他的给功能。
6、面向对象的基本原则
a.对象内部是高内聚的
-对象只是负责一项特定的职能
-所有的对象相关的内容,都会封装到内部,以属性和方法的形式存在
b.对象对外是低耦合的
-外部世界可以看到对象的一些属性。
-外部世界可以看到对象的某些事情。
总结:高内聚,低耦合
7、面向对象的基本概念
a.类
-物以类聚,把具有相似特征的对象归类带一个类中
-类定义了这些相似对象拥有相同的属性和方法
-类是相似对象的描述,称为类的定义,是该类对象的蓝图或者原型。
-类的对象称为类的一个 实例。
-类的属性和方法称为 类成员
b.类的实例化
类的实例化(instantiate) 通过类定义一个类的对象
c.类和类的实例化
-创建一个类
<?php class NbaPlayer { public $name = "乔丹"; public function run(){ echo "Running\n"; } } $jordan = new NbaPlayer(); echo $jordan->name."\n"; echo $jordan->run();
d.构造函数
默认构造函数在对象创建的时候被调用。
__construct() 构造方法
$this 伪变量
<?php class NbaPlayer { public $name; function __construct(){ $this->name = "乔丹"; echo "创建NBA球员\n"; } public function run(){ echo "Running\n"; } } $jordan = new NbaPlayer(); echo $jordan->name."\n"; echo $jordan->run();
e.析构函数
析构函数会在程所有程序序执行完了就会被执行。
析构函数干预,将对象置为空过后就会被执行
<?php class NbaPlayer { public $name; function __construct(){ $this->name = "乔丹"; echo "创建NBA球员\n"; } public function run(){ echo "Running\n"; } function __destruct(){ echo "析构函数运行了\n"; } } $jordan = new NbaPlayer(); echo $jordan->name."\n"; echo $jordan->run(); //$jordan = null; echo "程序结束\n";