Atendiendo a lo que tradicionalmente conocemos como herencia, esperaríamos que si yo redefino una función o una constante en una clase hija, esta se va a sobreescribir. En PHP esto no sucede así dependiendo de como hagamos la llamada.
En este vídeo explico con varios ejemplos como funciona el Late Static Binding, que es la forma de solucionar este comportamiento inesperado.