面向对象三大特征
很多资料说面向对象有三条特征是封装,继承多态。
但是抽象也是面向对象中的一个特征。
抽象
去定义一个类时候,实际上就是把一类事物的共有的属性和行为提取出来,形成一个物理模型(模板)。这种研究问题的方法称为抽象。
封装
封装就是把抽象出的数据和对数据的操作封装在一起,数据被保护在内部,程序的其它部分只有通过被授权的操作(成员方法),才能对数据进行操作。
继承
继承可以解决代码复用,当多个类存在相同的属性(变量)和方法时,可以从这些类中抽象出父类,在父类中定义这些相同的属性和方法,所有的子类不需要重新定义这些属性和方法,只需要通过
class 子类名 extends 父类名{
}
这样,子类就会自动拥有父类定义的属性和方法。
多态
函数名一样,通过函数的参数个数或者是参数类型不同,达到调用同一个函数名,但是可以区分不同的函数。
传统的重载
class A{
public function test1(){
echo “test1”;
}
public function test1($a){
echo “test1 hello”;
}
}
$a =new A();
**没有传入参数则调用test1()