[php] 클래스와 객체

이 글에서는 PHP에서의 클래스와 객체 지향 프로그래밍에 대해 알아보겠습니다.

클래스란 무엇인가요?

클래스는 객체를 생성하기 위한 일종의 템플릿이라고 생각할 수 있습니다. 클래스는 속성(변수)와 메서드(함수)로 구성되어 있으며, 객체를 생성하기 위한 청사진 역할을 합니다.

class Car {
    // 속성(변수)
    public $color;
    public $brand;

    // 메서드(함수)
    public function startEngine() {
        // 엔진 시작 로직
    }

    public function stopEngine() {
        // 엔진 정지 로직
    }
}

위 예제에서 Car 클래스는 colorbrand라는 속성 그리고 startEngine()stopEngine()라는 메서드를 가지고 있습니다.

객체란 무엇인가요?

객체는 클래스의 인스턴스(실제 데이터)입니다. 클래스의 정의를 기반으로 만들어진 실체화된 인스턴스로, 속성과 메서드를 포함합니다.

$myCar = new Car();
$myCar->color = 'red';
$myCar->brand = 'Toyota';
$myCar->startEngine();

위 예제에서 $myCarCar 클래스의 객체이며, colorbrand 속성을 설정하고 startEngine() 메서드를 호출할 수 있습니다.

상속과 다형성

클래스는 다른 클래스로부터 상속을 받아 새로운 클래스를 만들 수 있습니다. 또한, 부모 클래스의 메서드를 자식 클래스에서 재정의하여 다양한 형태로 사용할 수 있습니다.

정리

이제 PHP에서 클래스와 객체를 정의하고 사용하는 기본적인 개념에 대해 알아보았습니다. 객체 지향 프로그래밍을 통해 코드를 구조화하고 유연하게 만들 수 있으며, 재사용성을 높일 수 있습니다.

참고 문헌: PHP 공식 문서