상속

자식(child) 클래스는 부모(parent) 클래스의 모든 public, protected 멤버를 상속

1
2
3
4
class B extends A
{
    B 클래스만의 프로퍼티와 메소드;
}

오버라이딩

이미 정의된 메소드를 같은 이름의 메소드로 다시 정의

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
class A
{
    public $property = "class A";
    public function showProperty()
    {
        echo $this->property."<br>";
    }
}

class B extends A                    // 클래스 A를 상속 받음.
{
    public $property = "class B";
    public function showProperty()   // 클래스 A의 메소드를 오버라이딩
    {
        echo "hello ".$this->property."<br>";
    }
}

$a = new A();
$a->showProperty();                  // 클래스 A의 메소드 호출
$b = new B();
$b->showProperty();                  // 클래스 B의 메소드 호출