在面向对象(OOP)语言中,一个类可以有一个或多个子类,每个类至少有一个公共方式作为外部代码访问的接口,并且引入抽象方法以便于继承。现在看看抽象类和抽象方法是如何定义的和它们的特性。

什么是抽象方法我们在类名称中定义的惟一方法没有方法体方法,即所谓的抽象方法,没有方法括号中没有方法体声明和内容,但是方法名后面的直接语句,后跟分号,也在抽象方法中必须添加一个关键字。


1。摘要关键词:摘要

抽象不能指定,但也有某些概念或名称。在PHP中,我们声明一个抽象类或方法。我们需要使用抽象的关键词。

2,抽象方法和抽象类的定义

一个类中至少有一个方法是抽象的,我们称它为抽象类。
复制代码代码如下所示:
抽象类class1 {

抽象函数关系();
......
}

1。类中至少有一种抽象方法。
2。抽象方法不允许有{ }。
三.我们必须在抽象方法的前面加上摘要。


3,使用抽象类和方法的规则


抽象类的几个特点:

1。不能实例化,只能继承

2。在继承的派生类中,所有抽象方法都应该重载以实例化。



抽象方法的语句如下所示:

复制代码代码如下所示:
< PHP
抽象函数关系();

>



什么是抽象类只要类中有抽象方法,类就必须定义为抽象类。抽象类不能实例化对象,所以抽象方法被用作子类、重载模板,以及继承的抽象类中的方法实现。

抽象类和抽象类的实现示例如下:

复制代码代码如下所示:
< PHP
抽象类用户抽象类
摘要保护功能(getUser); / /定义抽象方法
公共功能print_content(){
印刷美元-> getUser();
}
}

类vipuser扩展用户{
保护功能getUser(){
返回抽象类和抽象方法;
}
}

美元=新用户(vipuser); / /子类的实例化
($用户-> print_content); / /抽象方法和抽象类
>


注意:抽象类继承另一个抽象类(其目的是扩展抽象类),并且不能重写父类的抽象方法。

在PHP5.1环境,静态抽象方法的抽象类的支持。下面的例子表明,静态抽象方法可以声明。实现此方法时,它必须是一个静态方法。

复制代码代码如下所示:
< PHP
抽象类用户{
受保护的静态$ = 0;
静态函数getsal();
静态函数setsal($萨尔);
}
类vipuser扩展用户{
静态函数getsal(){
返回自我:$ $;
}
静态函数setsal($ SAL){
自我:$ $ =萨尔$;
}
}
VipUser::setsal(100);
你是。VipUser::getsal();
>