[php] 추상 클래스
PHP에서 추상 클래스는 일반 클래스와 다르게 인스턴스를 생성할 수 없는 클래스입니다. 대신 다른 클래스에서 상속하여 구현할 수 있는 메서드와 속성을 정의합니다.
추상 클래스 정의
추상 클래스를 정의할 때는 abstract
키워드를 사용합니다. 이렇게 정의된 추상 클래스는 다음과 같이 선언할 수 있습니다.
abstract class Animal {
// 추상 메서드 선언
abstract public function makeSound();
}
위 예제에서 Animal
클래스는 abstract
키워드로 정의되었고, makeSound
메서드는 추상 메서드로 선언되었습니다. 이제 이 클래스를 상속받아 실제로 메서드를 구현하는 클래스를 정의할 수 있습니다.
추상 클래스 상속
추상 클래스를 상속하는 자식 클래스는 추상 메서드를 반드시 구현해야 합니다. 그렇지 않으면 PHP는 오류를 발생시킵니다.
class Dog extends Animal {
public function makeSound() {
return "Woof!";
}
}
Dog
클래스는 makeSound
메서드를 구현하여 Animal
추상 클래스를 상속받았습니다. 이제 Dog
클래스는 인스턴스화하여 사용할 수 있습니다.
추상 클래스 사용
추상 클래스는 다음과 같이 사용될 수 있습니다.
$dog = new Dog();
echo $dog->makeSound(); // 출력: Woof!
이와 같이 PHP에서 추상 클래스를 사용하여 코드를 구조화하고 재사용성을 높일 수 있습니다.
참고 문헌: