Con Java 21, se introducen dos características que simplifican el código para desarrolladores: clases sin nombre y métodos main sin nombre. Estas mejoras buscan reducir la cantidad de código boilerplate en programas simples y facilitar el aprendizaje de Java para nuevos desarrolladores.
Las clases sin nombre permiten escribir código sin necesidad de definir explícitamente una clase contenedora. Esto facilita la escritura de programas pequeños o scripts sin la sobrecarga de definir clases innecesarias.
Antes de Java 21, un programa en Java requería una clase con un main:
public class MiClase {
public static void main(String[] args) {
System.out.println("Hola, Java 21!");
}
}
Con las clases sin nombre, ahora puedes escribir simplemente:
System.out.println("Hola, Java 21!");
En Java 21, no es obligatorio definir explícitamente public static void main(String[] args). Ahora el código dentro del archivo fuente se ejecuta directamente.
System.out.println("Ejecutando sin un método 'main' explícito!");
¿Cómo funciona?
- La JVM reconoce el archivo como ejecutable sin necesidad de una clase o main.
- Útil para scripts rápidos o pruebas sencillas.
- Sigue siendo posible definir clases si se necesita una estructura más compleja.
Las clases sin nombre y los métodos main sin nombre en Java 21 son pasos importantes para hacer el lenguaje más accesible y fácil de usar en escenarios rápidos y educativos. Si bien Java sigue siendo un lenguaje de propósito general con una fuerte orientación hacia aplicaciones empresariales, estas mejoras lo acercan más al paradigma de scripting y programación ligera, pero a mi entender nos alejan de los conceptos puros de programación orientada a objetos.