首页  >  文章  >  后端开发  >  php一个类可以实现多个接口吗

php一个类可以实现多个接口吗

王林
王林原创
2019-09-28 11:54:145970浏览

php一个类可以实现多个接口吗

和大多数面向对象的编程语言一样,在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中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关文章

查看更多