Clases y Objetos

Repaso previo a Clases y Objetos

Un repaso rápido de conceptos fundamentales necesarios antes de adentrarnos en Clases y Objetos.

Antes de comenzar con el tema de Clases y Objetos, es útil hacer un repaso rápido de algunos conceptos fundamentales que serán necesarios para entender este paradigma de programación desde el punto de vista del lenguaje Java y desde la versión 25 más reciente.

Actualización del Bloque main

En versiones anteriores de Java, el método main se definía de la siguiente manera:

public static void main(String[] args) {
    // Código aquí
}

Además de que este método debía de existir dentro de una clase, a partir de Java 25, se ha introducido una sintaxis más simplificada para el método main, permitiendo escribir programas más concisos. La nueva forma es la siguiente:

void main() {
    // Código aquí
}

Esta nueva sintaxis elimina la necesidad de declarar el método como public static y omite los argumentos String[] args, lo que facilita la escritura de programas simples y rápidos. Además, ya no es obligatorio que el método main esté contenido dentro de una clase, lo que representa un cambio significativo en la estructura del código Java.

Es importante destacar que esta nueva sintaxis está diseñada para simplificar la escritura de programas pequeños y ejemplos educativos. Para aplicaciones más complejas y en entornos de producción, es recomendable seguir utilizando la sintaxis tradicional del método main dentro de una clase.

El bloque switch mejorado

Otra mejora significativa en Java 25 es la introducción de una versión más concisa y expresiva del bloque switch. Anteriormente, el switch se escribía de la siguiente manera:

switch (variable) {
    case valor1:
        // Código para valor1
        break;
    case valor2:
        // Código para valor2
        break;
    default:
        // Código por defecto
        break;
}

A partir de Java 25, se ha introducido una nueva sintaxis para el switch que permite utilizar expresiones lambda y simplificar el código. La nueva forma es la siguiente:

switch (variable) {
    case valor1 -> {
        // Código para valor1
    }
    case valor2 -> {
        // Código para valor2
    }
    default -> {
        // Código por defecto
    }
}

Esta nueva sintaxis utiliza la flecha -> para asociar cada caso con su bloque de código correspondiente, eliminando la necesidad de utilizar la palabra clave break. Esto hace que el código sea más limpio y fácil de leer. Además si las acciones a realizar son simples, se pueden escribir en una sola línea:

switch (variable) {
    case valor1 -> System.out.println("Valor 1 seleccionado");
    case valor2 -> System.out.println("Valor 2 seleccionado");
    default -> System.out.println("Valor por defecto");
}

Incluso, la sentencia switch puede ser utilizado como una expresión que devuelve un valor:

int resultado = switch (variable) {
    case valor1 -> 10;
    case valor2 -> 20;
    default -> 0;
};

Estas mejoras en el bloque switch permiten escribir código más conciso y expresivo, facilitando la lectura y el mantenimiento del mismo.

Tipos de Datos

Java es un lenguaje de programación fuertemente tipado, lo que significa que cada variable debe declararse con un tipo de dato específico. A continuación, se presentan los tipos de datos primitivos más comunes en Java:

Tipo de DatoDescripciónTamaño
intEntero de 32 bits4 bytes
longEntero de 64 bits8 bytes
floatNúmero de punto flotante de 32 bits4 bytes
doubleNúmero de punto flotante de 64 bits8 bytes
charCarácter Unicode de 16 bits2 bytes
booleanValor verdadero o falso1 bit
byteEntero de 8 bits1 byte
shortEntero de 16 bits2 bytes

Los Wrappers

En Java, los tipos de datos primitivos tienen clases envolventes (wrappers) que proporcionan métodos y funcionalidades adicionales. A continuación, se presentan los wrappers correspondientes a los tipos de datos primitivos:

Tipo PrimitivoWrapper Correspondiente
intInteger
longLong
floatFloat
doubleDouble
charCharacter
booleanBoolean
byteByte
shortShort
Copyright Jesús Aurelio Castro Magaña © 2026