¿Qué es la clase base?
Una clase base, también llamada superclase, es un objeto de computadora que actúa como base para una o más clases derivadas. Cualquier lenguaje de computadora que sea capaz de herencia puede crear una clase base. Dependiendo de su tipo preciso, las clases base pueden o no ser capaces de inicialización, asignando un valor inicial a un objeto, por su cuenta, pero siempre dan algún tipo de funcionalidad común a cualquier clase que hereda de ellos. Nunca hay un límite para el número de clases derivadas, o subclases, que las clases base pueden tener, pero puede haber un límite, dependiendo del lenguaje de la computadora, para el número de clases base que puede tener una clase derivada. Se dice que los idiomas que permiten que una clase derivada tenga una sola base imponga una herencia única, mientras que aquellos que permiten que una clase derivada tenga múltiples clases de base use herencia múltiple.
Las clases base concretas se pueden inicializar por su cuenta; Es decir, se puede hacer un objeto del tipo de clase base. Si un ejemplo de clasees una base para una clase derivada Ejemplo2, se puede hacer un objeto de tipo Ejemplo2 y un ejemplo de objeto de tipo. Un ejemplo de objeto de tipo solo se puede hacer llamando explícitamente ese tipo de objeto; Crear un objeto de tipo Ejemplo2 no hace un objeto secundario de tipo de ejemplo. En cada caso, el tipo de objeto que se crea construye una instancia de sí solo.
Las clases base abstractas, por el contrario, no se pueden inicializar por su cuenta, lo que significa que un objeto de la clase base no puede ser realizado por sí mismo. Si una clase Ejemplo3 es una base abstracta para una clase derivada Ejemplo4, solo se puede hacer un objeto de tipo Ejemplo4. Aunque el tipo de ejemplo4 incluye datos del tipo Ejemplo3, intentar hacer un objeto únicamente de tipo Ejemplo3 dará como resultado un error. Esta funcionalidad puede ser útil a veces, particularmente si la clase Ejemplo3 contiene datos privados que deberían estar estrechamente regulados.
DepeEn el lenguaje en el que aparece, una clase base puede tener comportamientos ligeramente diferentes y nombres marcadamente diferentes. En Java®, las clases base siempre se refieren por ese nombre, mientras que en C ++, dependiendo de su estructura, pueden llamarse clases virtuales. Las diferencias en el nombre y la funcionalidad, aunque significativas en términos de los lenguajes de la computadora que se utilizan, no implican diferencias importantes en el principio detrás de las clases. Una clase base siempre se usa para encapsular la funcionalidad y los datos comunes para sus clases derivadas, independientemente del lenguaje.