¿Qué es null/nil en Java y cómo trabajar con ello?
¡Hola a todos! Estoy aprendiendo los fundamentos de Java y me encontré con el concepto de null. En algunos lenguajes (por ejemplo, en SQL o Go) estoy acostumbrado al término nil. ¿Entiendo correctamente que en Java no existe nil y solo se usa null? Y si es así, ¿qué es exactamente: una referencia vacía o un valor especial?
El problema surgió cuando escribí un código simple con la clase User e intenté llamar a un método en un objeto que no había inicializado:
public class User {
String name;
void printName() {
System.out.println(name.length());
}
public static void main(String[] args) {
User user = null;
user.printName(); // Aquí se lanza NullPointerException
}
}
Esperaba que si user es igual a null, el método simplemente no hiciera nada o devolviera una cadena vacía. Pero en lugar de eso, el programa falla con un error.
Ya he intentado:
- Verificar si