> 백엔드 개발 > PHP 문제 > PHP의 추상 클래스는 무엇입니까? 그것을 사용하는 방법?

PHP의 추상 클래스는 무엇입니까? 그것을 사용하는 방법?

王林
풀어 주다: 2023-02-23 17:14:01
앞으로
3418명이 탐색했습니다.

PHP의 추상 클래스는 무엇입니까? 그것을 사용하는 방법?

추상 클래스: 클래스에 있는 적어도 하나의 메소드가 추상이므로 이를 추상 클래스라고 부릅니다.

요구 사항:

1. 클래스에는 하나 이상의 추상 메서드가 있어야 합니다

2. 추상 메서드는 {}

3추상 메서드 앞에 추가해야 합니다.

예: 클래스 앞에 abstract

<?php 
    abstract class Human {
        public abstract function getInfo () {
            echo &#39;我是getInfo&#39;;
        }
    }
?>
로그인 후 복사
를 추가합니다.

Human의 추상 클래스가 정의되어 있습니다. 추상 클래스에 추상 메서드가 있습니다. 실행 시 오류가 발생합니다.

Fatal error: Abstract function Human::getInfo() cannot contain body
로그인 후 복사

추상 메서드에는 텍스트 부분( 메서드 본문 없음), 중괄호를 제거해야 합니다

<?php 
    abstract class Human {
        public abstract function getUserInfo ();
        public abstract function getWalletInfo ();
    }
    
    class Student extends Human {
        public function getUserInfo () {
            echo &#39;getinfo&#39;;
        }
        
        public function getWalletInfo () {
            echo &#39;getwalletInfo&#39;;
        }
    }
    
    $Tom = new Student();
    $Tom -> getUserInfo();
    $Tom -> getWalletInfo ();
?>
로그인 후 복사

Note:

1. 추상 클래스는 인스턴스화할 수 없으며 상속만 가능합니다.

2. 상속된 파생 클래스에서는 모든 추상 메서드를 인스턴스화하기 전에 오버로드해야 합니다

abstract class Human {
    public abstract function getUserInfo ();
    public abstract function getWalletInfo ();
}

class Student extends Human {
    public function getUserInfo () {
        echo &#39;getinfo&#39;;
    }
    
    // public function getWalletInfo () {
    //     echo &#39;getwalletInfo&#39;;
    // }
}

$Tom = new Student();
로그인 후 복사

예를 들어 파생 클래스에 getWalletInfo() 메서드가 없으면 new가 실패하게 됩니다

추상의 의미 클래스: 파생 클래스가 추상 클래스를 상속하는 경우 메서드를 설정하기 위해 추상 클래스의 명명 규칙을 사용해야 합니다. 그렇지 않으면 파생 클래스를 인스턴스화할 수 없습니다. 실제로 사양을 선언하고 표준화 목적을 달성합니다. 행동 양식.

더 많은 관련 콘텐츠를 알고 싶다면 PHP 중국어 웹사이트를 방문하세요:

PHP 비디오 튜토리얼

위 내용은 PHP의 추상 클래스는 무엇입니까? 그것을 사용하는 방법?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:csdn.net
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿