happy cat image

everdevel

hello world

EEOS

에버디벨 책을 학습할 수 있는 클라우드 개발 환경을 제공합니다.
개발환경구축없이 태블릿에서도 개발할 수 있는 책의 예제와 프로젝트
오직 당신을 위한 스토리지, URL, DB, 무제한 트래픽
그리고 웹기반 개발환경을 제공합니다.

더 알아보기
에버디벨이 만든 무료 클라우드 개발환경을 소개합니다.

인터페이스 상속

인터페이스를 상속할 때도 클래스와 마찬가지로 extends 키워드를 사용합니다.

interface 상속 사용 방법

interface 자식인터페이스명 extends 부모인터페이스명
{
}

코드로 볼까요?

<?php

    interface parentinter
    {
        public function auto();
    }

    interface childinter extends parentinter
    {
        public function run();

        public function stop();

        public function turn();

    }

    class Car implements childinter
    {

        public function run()
        {
            return '달립니다.';
        }

        public function stop()
        {
            return '멈춥니다.';
        }

        public function turn()
        {
            return '회전합니다.';
        }

    }

    $hello = new Car;
    echo $hello->run();
?>

(로그인을 하시면 위의 코드를 실행 할 수 있습니다.
oAuth인증 방식으로 빠르고 간편하게 로그인할 수 있습니다.
네이버, 구글, 카카오, 라인의 ID로 순식간에 로그인 하세요.)

위 코드를 보면 Car 클래스는 인터페이스 childinter를 따릅니다. childinter의 규칙에는 맞으나, childinter 인터페이스는 부모 인터페이스를 상속 받았고
부모 인터페이스인 parentinter에는 auto()가 있습니다. 그래서 childinter에는 메소드 auto()를 선언해야합니다.
하지만 않아서 오류가 발생했죠.

위 코드의 결과

위의 코드에서 Car 클래스에 auto() 메소드를 추가하여 오류가 발생하는지 안하는지 살펴봅시다.

<?php

    interface parentinter
    {
        public function auto();
    }

    interface childinter extends parentinter
    {
        public function run();

        public function stop();

        public function turn();

    }

    class Car implements childinter
    {

        public function run()
        {
            return '달립니다.';
        }

        public function stop()
        {
            return '멈춥니다.';
        }

        public function turn()
        {
            return '회전합니다.';
        }

        public function auto()
        {
            return '자동운전 모드';
        }

    }

    $hello = new Car;
    echo $hello->auto();
?>

(로그인을 하시면 위의 코드를 실행 할 수 있습니다.
oAuth인증 방식으로 빠르고 간편하게 로그인할 수 있습니다.
네이버, 구글, 카카오, 라인의 ID로 순식간에 로그인 하세요.)

위 코드의 결과


    
    

강좌로 돌아가기

댓글 0개

정렬기준