Aprende sobre los constructores en Java y su funcionamiento

| Última modificación: 30 de julio de 2024 | Tiempo de Lectura: 3 minutos

Algunos de nuestros reconocimientos:

Premios KeepCoding

Java, al ser un lenguaje de programación orientado a objetos, nos ofrece grandes ventajas y propuestas de estructuración. Uno de los grandes pilares de la POO son los constructores en Java. Si no sabes qué son o cómo usarlos, llegaste al lugar indicado, porque aquí te enseñaremos todo lo necesario para que aprendas sobre los constructores en el universo Java.

constructores en Java

¿Qué son los constructores en Java?

En la programación orientada a objetos, los constructores en Java son elementos específicos que se utilizan para la inicialización de un objeto recién creado. En este caso, los constructores en Java deben tener el mismo nombre que la clase y no tener un tipo de retorno. Su objetivo primario es asignar valores iniciales a las variables de instancia del objeto.

Los constructores en Java tienen diversas funcionalidades, ya que, además de inicializar el objeto, pueden establecer sus propiedades y valores predeterminados. Sumado a esto, tienen la posibilidad de aceptar argumentos, cosa que permite la configuración de un objeto con valores específicos en el momento en el que es creado.

Algunas de las características que deben poseer los constructores en Java son:

  • Nombre: El constructor tiene el mismo nombre que la clase.
  • Sin tipo de retorno: No se especifica ningún tipo de retorno, ni siquiera void.
  • Automatización: Se ejecuta automáticamente cuando se crea un objeto de la clase.

¿Cómo se implementan los constructores en Java?

El proceso de implementar constructores en Java es relativamente simple. Quedémonos en este ejemplo un momento:

public class Persona {
String nombre;
int edad;

// Constructor
public Persona(String nombre, int edad) {
this.nombre = nombre;
this.edad = edad;
}
}

En este caso, la clase Persona tiene un constructor que acepta dos parámetros: nombre y edad. Utiliza la palabra reservada this para referirse a las variables de instancia de la clase.

Crear un objeto usando el constructor

🔴 ¿Quieres Aprender a Programar con Python? 🔴

Descubre el Full Stack Jr. Bootcamp - Aprende a Programar desde Cero de KeepCoding. La formación más completa del mercado y con empleabilidad garantizada

👉 Prueba gratis el Bootcamp Aprende a Programar desde Cero por una semana

Cuando creamos un objeto de la clase Persona, podemos proporcionar los valores iniciales para los campos nombre y edad utilizando el constructor:

Persona persona1 = new Persona("Juan", 25);

En el ejemplo estamos creando un nuevo objeto Persona llamado persona1, y estamos pasando los valores “Juan” y “25” al constructor para inicializar los campos nombre y edad del objeto.

Tipos de constructores en Java

Existen dos tipos de constructores en Java: el constructor predeterminado y el constructor parametrizado.

Constructor predeterminado

Este lo proporciona Java de forma automática si no se define ningún constructor explícitamente en la clase. Este tipo de constructor no toma ningún parámetro y su cuerpo está vacío:

public class Ejemplo {
int num;
String cadena;

// Constructor predeterminado
public Ejemplo() {
num = 0;
cadena = "Ejemplo";
}
}

Esta opción automática de Java para crear los constructores nos ahorra mucho tiempo que podemos invertir en observar y analizar otras partes de nuestro código.

Constructor parametrizado

Selecciona uno o más parámetros y se usa para inicializar los miembros de datos de la clase con valores específicos proporcionados por el usuario:

public class Ejemplo {
int num;
String cadena;

// Constructor parametrizado
public Ejemplo(int n, String s) {
num = n;
cadena = s;
}
}

Ejemplos de constructores en Java

Veamos algunos ejemplos para entender mejor cómo funcionan los constructores en Java.

Ejemplo de constructor con parámetros

Un constructor con parámetros se vería más o menos así:

public class Coche {
String marca;
double kilometraje;
String color;
int anoFabricacion;

// Constructor con parámetros
public Coche(String marca, double kilometraje, String color, int anoFabricacion) {
this.marca = marca;
this.kilometraje = kilometraje;
this.color = color;
this.anoFabricacion = anoFabricacion;
}

public void mostrarInfo() {
System.out.println("Marca: " + marca);
System.out.println("Kilometraje: " + kilometraje);
System.out.println("Color: " + color);
System.out.println("Año de Fabricación: " + anoFabricacion);
}

public static void main(String[] args) {
Coche miCoche = new Coche("Toyota", 15000, "Rojo", 2020);
miCoche.mostrarInfo();
}
}

En este ejemplo la clase Coche tiene un constructor parametrizado que inicializa los atributos marca, kilometraje, color y anoFabricacion. Luego, creamos un objeto Coche utilizando este constructor y mostramos su información.

Ejemplo de constructor predeterminado

Para el caso de los constructores predeterminados, quedaría algo similar a:

public class Coche {
String marca;
double kilometraje;
String color;
int anoFabricacion;

// Constructor predeterminado
public Coche() {
marca = "Desconocida";
kilometraje = 0;
color = "Blanco";
anoFabricacion = 2021;
}

public void mostrarInfo() {
System.out.println("Marca: " + marca);
System.out.println("Kilometraje: " + kilometraje);
System.out.println("Color: " + color);
System.out.println("Año de Fabricación: " + anoFabricacion);
}

public static void main(String[] args) {
Coche miCoche = new Coche();
miCoche.mostrarInfo();
}
}

En este ejercicio la clase Coche tiene un constructor predeterminado que inicializa los atributos con valores por defecto. Luego, creamos un objeto Coche utilizando este constructor y mostramos su información.

Si te interesó este tema y quieres seguir aprendiendo mucho más sobre Java, te invitamos a inscribirte en nuestro curso de java, en donde verás toda la temática concerniente a esta área y podrás acceder a mejores ofertas laborales una vez finalizado el bootcamp. ¡No esperes más, el futuro está a la vuelta de la esquina!

Ramón Maldonado

Full Stack Developer y Responsable de Formación base en KeepCoding.

Posts más leídos

¡CONVOCATORIA ABIERTA!

Java y Spring Boot

Full Stack Bootcamp

Clases en Directo | Profesores en Activo | Temario 100% actualizado

¡CONVOCATORIA ABIERTA!

Aprende a Programar desde Cero

Full Stack Jr. Bootcamp

Apúntate y consigue uno de los perfiles más demandados con Python en solo 4 meses.