Функциональность PHP get_class

Может кто-нибудь объяснить, почему этоget_class функция, возвращающая разные значения ниже? В частности, что он должен делать, когда он вызывается в базовом классе и когда он вызывается в производном классе?

abstract class bar {
    public function __construct()
    {
        var_dump(get_class($this)); //prints 'foo'
        var_dump(get_class()); // prints 'bar'
    }
}

class foo extends bar {
}

new foo;

Ответы на вопрос(1)

Ваш ответ на вопрос