PHP 抽象方法与抽象类abstract关键字介绍及应用
PHP抽象方法与抽象类abstract关键字
abstract关键字用于定义抽象方法与抽象类。
抽象方法
抽象方法指没有方法体的方法,具体就是在方法声明的时候没有{}括弧以及其中的内容,而是直接在声明时在方法名后加上分号结束。
abstract关键字用于定义抽象方法,语法:
abstractfunctionfunction_name();
抽象类
只要一个类里面有一个方法是抽象方法,那么这个类就要定义为抽象类。抽象类同样用abstract关键字来定义。
抽象类不能产生实例对象,通常是将抽象方法做为子类方法重载的模板使用的,且要把继承的抽象类里的方法都实现。实际上抽象类是方便继承而引入的。
例子:
<?php abstractclassAbstractClass{ //定义抽象方法 abstractprotectedfunctiongetValue(); //普通方法 publicfunctionprintOut(){ print$this->getValue()."<br/>"; } } classConcreteClassextendsAbstractClass{ protectedfunctiongetValue(){ return"抽象方法的实现"; } } $class1=newConcreteClass; $class1->printOut(); ?>
在这个例子中,父类定义了抽象方法以及对于方法的实现,但实际的内容却在子类里定义。