本节介绍面向对象编程的主要概述,并探索这些概念之间如何交互;第3章将深入讨论这些概念在PHP6中的实现细节。本间涵盖了以下主题:
* 类(Class)
* 对象(Object)
* 继承(Inheritance)
* 多态(Polymorphism)
* 接口(Interface)
* 封装(Encapsulation)
# 1.3 类
类是一个代码单元(由变量和函数组成),该代码单元描述了集合中所有成员的特征和行为。
## 1.3.1 对象
类可以看成是构造对象的蓝本。
类永远不能有导发值 或状态,只有对象才可以值或状态。
在实例化,就可以将对象用于实现应用程序的业务需求。
### 1. 创建类
```
<?php
class Demo{
}
```
实例化一个对象
```
<?php
require_once('class.Demo.php');
$objDemo = new Demo();
```
### 2.添加方法
```
<?php
class Demo{
function sayHello($name){
print "Hello $name";
}
}
```
使用 `->` 来访问新创建的函数:
```
<?php
require_once('class.Demo.php');
$objDemo = new Demo();
$objDemo->sayHello('Steve');
```
>PHP在其OO语法中根本不使用点操作(.)
### 3.添加属性
在面向过程代码中,当希望存储某个值 时,会将该值赋给一个`变量`。
在OOP中,当希望存储某个属性的值时,也可以使用一个`变量`。
该变量在类声明的顶部声明,`类声明位于包含类代码的大括号中`。
变量的名称就是属性的名称!