和大多数面向对象的编程语言一样,在PHP中是不支持多重继承的。如果要实现多重继承功能,可以通过接口。
接口的思想是:
指定一个实现了该接口的类必须实现的一系列函数。一般,我们用interface来声明一个接口,并在接口中声明一些方法(即函数),注意只是声明不用实现这个函数。然后,用class声明一个类并用implements去使用这个接口,再在类中把接口中的声明的方法进行实现。
一般定义方法如下:
接口定义:
[修饰符] interface 接口名 [extends 父接口名列表]{ [public] [static] [final] 常量; [public] [abstract] 方法; }
修饰符:可选,用于指定接口的访问权限,可选值为public。如果省略则使用默认的访问权限。
接口名:必选参数,用于指定接口的名称,接口名必须是合法的Java标识符。一般情况下,要求首字母大写。
extends 父接口名列表:可选参数,用于指定要定义的接口继承于哪个父接口。当使用extends关键字时,父接口名为必选参数。
方法:接口中的方法只有定义而没有被实现。
实例:
接口定义: public interface CalInterface { final float PI=3.14159f;//定义用于表示圆周率的常量PI float getArea(float r);//定义一个用于计算面积的方法getArea() float getCircumference(float r);//定义一个用于计算周长的方法getCircumference() } 接口实现: public class Cire implements CalInterface { public float getArea(float r) { float area=PI*r*r;//计算圆面积并赋值给变量area return area;//返回计算后的圆面积 } public float getCircumference(float r) { float circumference=2*PI*r; //计算圆周长并赋值给变量circumference return circumference; //返回计算后的圆周长 } public static void main(String[] args) { Cire c = new Cire(); float f = c.getArea(2.0f); System.out.println(Float.toString(f)); } }
注意,如果没有实现接口中指定的方法,将产生一个致命错误。
推荐PHP视频教程:PHP视频教程
以上是php一个类可以实现多个接口吗的详细内容。更多信息请关注PHP中文网其他相关文章!