Entendiendo Constructores en Java: Inicialización y Mejores Prácticas
Un constructor inicializa un objeto cuando se crea. Tiene el mismo nombre que su clase y es sintácticamente similar a un método. Sin embargo, los constructores no tienen tipo de retorno explícito.
Normalmente, usarás un constructor para dar valores iniciales a las variables de instancia definidas por la clase, o para realizar cualquier procedimiento de inicio necesario para crear un objeto completamente formado.
Todas las clases tienen constructores, los definas o no, porque Java proporciona automáticamente un constructor por defecto que inicializa todas las variables miembro a cero. Sin embargo, una vez defines tu propio constructor, el constructor por defecto ya no se usa.
Sintaxis
Sintaxis de un constructor:
class NombreClase {
NombreClase() { }
}
Java permite dos tipos de constructores:
- Constructores sin argumentos
- Constructores parametrizados
Constructores sin Argumentos
Como su nombre indica, los constructores sin argumentos de Java no aceptan parámetros; en su lugar, inicializan las variables de instancia con valores fijos para todos los objetos.
Ejemplo
public class MiClase {
int num;
MiClase() { num = 100; }
}
Llamarías al constructor para inicializar objetos así:
public class DemoConstructores {
public static void main(String args[]) {
MiClase t1 = new MiClase();
MiClase t2 = new MiClase();
System.out.println(t1.num + " " + t2.num);
}
}
Esto produce:
100 100
Constructores Parametrizados
A menudo necesitarás un constructor que acepte uno o más parámetros. Los parámetros se añaden igual que en un método, declarándolos dentro de los paréntesis tras el nombre del constructor.
Ejemplo
Ejemplo simple usando un constructor:
// Un constructor simple.
class MiClase {
int x;
// Constructor
MiClase(int i) { x = i; }
}
Llamar al constructor para inicializar objetos:
public class DemoConstructores {
public static void main(String args[]) {
MiClase t1 = new MiClase(10);
MiClase t2 = new MiClase(20);
System.out.println(t1.x + " " + t2.x);
}
}
Resultado:
10 20
Java
- Entendiendo los Constructores en C++: Por Defecto, Parametrizados y de Copia Explicados
- Dominar Operadores en Java: Tipos, Sintaxis y Ejemplos Prácticos
- Comentarios en Java: Tipos, Uso y Mejores Prácticas
- Dominar el Bucle for Mejorado en Java: Sintaxis, Ejemplos y Mejores Prácticas
- Dominar Constructores en Java: Tipos, Uso y Ejemplos Prácticos
- Dominar Strings en Java: Creación, Métodos y Mejores Prácticas
- Dominando interfaces en Java: Conceptos, implementación y mejores prácticas
- Dominando las clases internas anónimas en Java: Definición, sintaxis y ejemplos prácticos
- Dominando Try‑with‑Resources en Java: Gestión automática de recursos explicada
- Anotaciones en Java explicadas: Tipos, ubicación y ejemplos prácticos
- Aserciones en Java: Guía práctica para detectar bugs y asegurar fiabilidad del código