Tipos de clases en PHP

En PHP existen diferentes tipos de clases, y aunque ya he explicado en el curso de PHP como funciona la programación orientada a objetos, en ocasiones puede resultar interesante tener una referencia rápida sobre los tipos de clases que podemos utilizar y sobre todo saber para que sirven…

Clase Instanciable

Es la clase normal, se nombra con la palabra reservada class y un nombre que puede empezar por una letra o un guión bajo y luego tener números, letras y guiones bajos. El único requisito para el nombre es que no sea una palabra reservada.

class NombreClase {
    #codigo...
}

Clases abstractas

No necesitan ser instanciadas pero serán heredadas en algún momento. Generalmente su finalidad es la de declarar clases genéricas sin otorgarle ninguna definición precisa ya que de ello se encargan las clases que la hereden

abstract class NombreClase {
    #codigo...
}

Herencia de clases

Cuando una clase hereda de otra recibe para si todas las propiedades y métodos de la clase madre, para ello hay que utilizar la palabra reservada extends

class NombreClaseHija extends NombreClaseMadre {
    #codigo...
}

Clases finales

Estas clases no pueden ser heredadas por otra, es decir ninguna podrá recibir sus métodos, propiedades… Para definirlas se utiliza la palabra reservada final.

final class NombreClase {
    #codigo...
}

¿Como saber que tipo de clase he de declarar?

Operación Instanciable Abstracta Heredada Final
clase que pueda ser instaciada y heredada  X
necesita ser heredada pero no instanciada  X
clase que guarda relacion con los metodos y propiedades de otra clase X
clase que se puede instanciar pero no heredar  X