>  기사  >  백엔드 개발  >  PHP 클래스가 여러 인터페이스를 구현할 수 있나요?

PHP 클래스가 여러 인터페이스를 구현할 수 있나요?

王林
王林원래의
2019-09-28 11:54:145932검색

PHP 클래스가 여러 인터페이스를 구현할 수 있나요?

대부분의 객체 지향 프로그래밍 언어와 마찬가지로 PHP에서는 다중 상속이 지원되지 않습니다. 다중 상속 기능을 구현하려면 인터페이스를 사용할 수 있습니다.

인터페이스의 개념은 다음과 같습니다.

인터페이스를 구현하는 클래스가 구현해야 하는 일련의 함수를 지정합니다. 일반적으로 우리는 인터페이스를 선언하고 인터페이스에서 일부 메서드(예: 함수)를 선언하기 위해 인터페이스를 사용합니다. 이 함수를 구현할 필요가 없다는 점만 선언합니다. 그런 다음 클래스를 사용하여 클래스를 선언하고 인터페이스를 사용하기 위해 구현한 다음 인터페이스에 선언된 메서드를 클래스에 구현합니다.

일반적인 정의 방법은 다음과 같습니다.

인터페이스 정의:

[修饰符] interface 接口名 [extends 父接口名列表]{
 
[public] [static] [final] 常量;
[public] [abstract] 方法;
}

수정자: 옵션, 인터페이스의 액세스 권한을 지정하는 데 사용되며 옵션 값은 공개입니다. 생략하면 기본 액세스 권한이 사용됩니다.

인터페이스 이름: 인터페이스 이름을 지정하는 데 사용되는 필수 매개변수입니다. 인터페이스 이름은 합법적인 Java 식별자여야 합니다. 일반적으로 대문자가 필요합니다.

상위 인터페이스 이름 목록 확장: 정의할 인터페이스가 상속되는 상위 인터페이스를 지정하는 데 사용되는 선택적 매개변수입니다. 확장 키워드를 사용하는 경우 상위 인터페이스 이름은 필수 매개변수입니다.

Methods: 인터페이스의 메소드는 정의만 되었을 뿐 구현되지는 않았습니다.

예:

接口定义:
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으로 문의하세요.