En primer lugar, incluir un comando que es leer un archivo fuente PHP y lo trata como estaba escrito en lugar de la directiva include. Puede usarlo en cualquier archivo fuente php y no está relacionado con la herencia de clase.
Por cierto, si no incluye el archivo que contiene el código fuente de clase A, no puede extender esa clase.
Extender una clase con la palabra clave extiende implica el concepto de herencia que es un concepto clave en la programación orientada a objetos.
Obtiene una clase (A) con algunos métodos y necesita una clase similar (B) con un comportamiento ligeramente diferente, puede derivar la nueva clase ampliando la clase A y modificando solo los métodos que tienen que cambiar (es llamado anulando) o agregando nuevos.
En opuesta a la herencia existe la composición. Con la composición no se extiende una clase para cambiar su comportamiento sino que se debe hacer un mosaico de clases para obtener el comportamiento deseado.
en la Wikipedia se puede encontrar una mejor explicación de object composition y [la herencia de clases] (http://en.wikipedia.org/wiki/Inheritance_(computer_science))
Parece que hay un poco de confusione en estos conceptos, mientras extiende la clase A y, al mismo tiempo, intente componerlo (por cierto, la sintaxis correcta es $ a = new B();).
Una referencia útil que, obviamente, [Gof, patrones de diseño] (http://en.wikipedia.org/wiki/Design_Patterns_(book))
lo que es más lenta extender o incluyendo Acabo de hacer una pequeña referencia, y me encontré con que la ampliación hace que el código ligeramente más lento es esto lo que quería decir..?.? – daniel
Digamos que quiero invocar foo en A y delega foo en B, luego habrá tiempo para dos llamadas a método en el enfoque de composición. Si A se extiende B, entonces la invocación de foo en A se considera 1 llamada a un método y no hay necesidad de una búsqueda, excepto cuando las clases están definidas (lo que ocurre una vez). –