Clases y Objetos en Java
Introducción
En este artículo aprenderás uno de los conceptos más importantes de Java: las clases y los objetos. Si vienes de trabajar con arrays y listas, ya sabes cómo almacenar datos. Ahora aprenderás cómo crear tus propios tipos de datos personalizados, con atributos y comportamientos propios.
¿Qué es una clase?
Una clase se podría decir que es una plantilla en la que se define cómo serán los objetos. En ella se declaran:
- Atributos: También llamados propiedades o variables de instancia
- Constructores: Un "método especial" que se utiliza para inicializar un objeto de dicha clase. Lo veremos más adelante
- Métodos: Son las funciones asociadas a esa clase
Ejemplo de clase en Java:
public class Persona {
// Atributos
private String nombre;
private int edad;
// Constructor
public Persona(String nombre, int edad) {
this.nombre = nombre;
this.edad = edad;
}
// Método
public void saludar() {
System.out.println("Hola, mi nombre es " + nombre + " y tengo " + edad + " años.");
}
}
¿Qué es un objeto?
Un objeto en Java, es una instancia de una clase. Se podría decir que es una copia de la clase totalmente independiente del resto de objetos que existan de esa clase.
Cada objeto tiene su propia copia de los atributos y puede usar los métodos definidos en la clase.
Cómo crear un objeto en Java
Para crear un nuevo objeto en Java, se debe usar la palabra clave "new" junto al constructor de la clase. Una vez creado el objeto, podemos llamar a los métodos disponibles en la clase:
public class Main {
public static void main(String[] args) {
// Crear un objeto de la clase Persona
Persona persona1 = new Persona("Laura", 25);
// Llamar a un método del objeto
persona1.saludar();
}
}
Salida esperada:
Hola, mi nombre es Laura y tengo 25 años.
¿Qué es un constructor?
Un constructor es un método especial que se llama automáticamente al crear un objeto. Sirve para inicializar los atributos, por lo tanto siempre es lo primero que se ejecuta cuando se crea un objeto.
Tipos de constructores:
- Constructor sin parámetros: También llamado "constructor por defecto". Si no se define ningún constructor, Java considerara que existe solo el constructor por defecto sin ningún tipo de funcionalidad.
- Constructor con parámetros: Ya lo usamos arriba. En el se inicializan variables que son necesarias para el funcionamiento del objeto.
public class Persona {
private String nombre;
private int edad;
// Constructor sin parámetros
public Persona() {
this.nombre = "Sin nombre";
this.edad = 0;
}
// Constructor con parámetros
public Persona(String nombre, int edad) {
this.nombre = "Sin nombre";
this.edad = 0;
}
public void saludar() {
System.out.println("Hola, soy " + nombre + ". Tengo " + edad + " años");
}
}
public class Main {
public static void main(String[] args) {
Persona persona2 = new Persona();
persona2.saludar(); // Hola, soy Sin nombre. Tengo 0 años
Persona persona3 = new Persona("Luis", 10);
persona3.saludar(); // Hola, soy Luis. Tengo 10 años
}
}
Como puedes observar, en una misma clase se pueden definir múltiples constructores. De esta forma el usuario que utilice esta clase, podrá usar el que más le convenga.
Conclusión
En este artículo hemos aprendido que una clase es una plantilla que define atributos y métodos, y que para utilizar estos métodos se deben crear objetos, que son instancias de dicha clase.
También hemos aprendido que un constructor es un método que se encarga de inicializar los objetos de una clase.
Un saludo.
2025-05-26