happy cat image

everdevel

Happiness is Here

EEOS

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

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

안녕하세요. 에버디벨입니다.
저의 실수로 2020년 3월 22일,23일,24일,27일,29일 서버에 문제가 발생하여 서비스가 멈췄습니다.
지금까지 에버디벨을 찾아주신 95만명의 방문자분들에게 불편을 드려죄송합니다.
현재 에버디벨 사이트는 복구했고 eeos는 점검중에 있습니다. 빠른복구하겠습니다.
eeos의 프로젝트 파일과 데이터베이스는 안전히 백업되어 복구한 상태입니다.
이번 일을 계기로 백업시스템을 더욱 강화했습니다.
유저님들 모두 코로나 바이러스 조심하시기 바랍니다. 감사합니다. ^-^*

인터페이스 상속

인터페이스를 상속할 때도 클래스와 마찬가지로 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개

정렬기준