PHP 抽象方法与抽象类abstract关键字介绍及应用

yipeiwu_com6年前PHP代码库

PHP 抽象方法与抽象类 abstract 关键字
abstract 关键字用于定义抽象方法与抽象类。

抽象方法

抽象方法指没有方法体的方法,具体就是在方法声明的时候没有 {} 括弧以及其中的内容,而是直接在声明时在方法名后加上分号结束。

abstract 关键字用于定义抽象方法,语法:
abstract function function_name();

抽象类

只要一个类里面有一个方法是抽象方法,那么这个类就要定义为抽象类。抽象类同样用 abstract 关键字来定义。
抽象类不能产生实例对象,通常是将抽象方法做为子类方法重载的模板使用的,且要把继承的抽象类里的方法都实现。实际上抽象类是方便继承而引入的。

例子:

复制代码 代码如下:

<?php
abstract class AbstractClass{
// 定义抽象方法
abstract protected function getValue();
// 普通方法
public function printOut(){
print $this->getValue()."<br />";
}
}
class ConcreteClass extends AbstractClass{
protected function getValue(){
return "抽象方法的实现";
}
}

$class1 = new ConcreteClass;
$class1->printOut();
?>

在这个例子中,父类定义了抽象方法以及对于方法的实现,但实际的内容却在子类里定义。

相关文章

PHP多例模式介绍

学习java就知道设计模式中有多例模式: 1、多例类可以有多个实例2、多例类必须能够自我创建并管理自己的实例,并向外界提供自己的实例。 大家都知道PHP单例模式,却很少说PHP多例模式,...

PHP Global定义全局变量使用说明

很不习惯PHP中的变量作用域,PHP中函数变量和全局是完全隔绝的,也就是无法相互访问。比如下面这样:复制代码 代码如下:$test = 123; abc(); //这里什么都不...

jquery+php+ajax显示上传进度的多图片上传并生成缩略图代码

jquery+php+ajax显示上传进度的多图片上传并生成缩略图代码

本例用到其他2个php class.upload.php和 functions.php还有css和js以及img文件 完整实例代码点击此处本站下载。 效果图如下: 实现代码如下: Ja...

PHP MSSQL 分页实例

本文实例为大家分享了PHP MSSQL可刷新分页实例,具体内容如下 <?php /* '页面说明: */ $link=mssql_connect("MYSQL200...

PHP传参之传值与传址的区别

废话不多说,先来看段代码 function test(&val){ return $val; } 其中为什么用到&进行传参呢,有什么好处? 传址是允许在函数内部进行改变的意思,比...