php是面向对象的脚本语言,而我们都知道,面向对象的语言具有三大特性:封装,继承,多态。
封装
对事物的封装是指,将事物进行抽象后,提供抽象概念的实现的具体方法。
封装方法
和别的程序设计语言一样,PHP也只是三种封装概念:Private,Protected,Public。
私有/Private
私有的概念是,仅仅对象内部可见,外部不可见
保护/Protected
保护的概念是,仅仅是自身类和继承类可见,这个关键字的用途主要是防止滥用类的派生,另外三方库编写的时候会用到,防止误用。
继承
对于一个好的程序设计,需要:
1、类和类之间应该是低耦合的。
2、继承通常是继承自抽象类,而不是具体类。(抽象类不能被实例化,只能被继承)
3、通常直接继承抽象类的具体类只有一层,在抽象类中用protected来限定。
合理的继承对于好的程序设计同样是必不可少的,结合abstract和protected,能让你编写出结构清晰的代码。
继承权限:private、protected、public三者权限控制不能小于父类,可以扩大父类权限
多态
多态是指在面向对象中能够根据使用类的上下文来重新定义或改变类的性质和行为。
唯独这个多态,php体现的十分模糊。原因是php是弱类型语言。