Instancia como una propiedad de clase estática

¿Es posible declarar una instancia de una clase como una propiedad en PHP?

Básicamente lo que quiero lograr es:

abstract class ClassA() { static $property = new ClassB(); } 

Bueno, sé que no puedo hacer eso, pero ¿hay alguna solución además de siempre hacer algo como esto?

 if (!isset(ClassA::$property)) ClassA::$property = new ClassB(); 

puedes usar una implementación tipo singleton:

  

entonces puedes hacer referencia a la instancia con:

 ClassA::getInstance()->someClassBMethod(); 

Una solución alternativa, un constructor estático, es algo en la línea de

  

Tenga en cuenta que la clase no tiene que ser abstracta para que funcione.

Consulte también Cómo inicializar variables estáticas y https://stackoverflow.com/a/3313137/118153 .