Excepción en el hilo main” java lang nullpointerexception
Hola soy un programador novato a nivel de bachillerato por lo que no se mucho de programación y estoy obteniendo bastantes errores los cuales se han resuelto mientras que otros no los entiendo completamente. Tengo que hacer un sencillo programa de selección de casillas en el que el usuario tiene que elegir entre una variedad de opciones y dependiendo de su acción la imagen cambia. El programa en sí compila perfectamente pero cuando lo ejecuto sin embargo me da algunas complicaciones. Aquí está mi programa:
Las NullPointerExceptions están entre las excepciones más fáciles de diagnosticar, frecuentemente. Siempre que tengas una excepción en Java y veas la traza de la pila ( así se llama tu segundo bloque de comillas, por cierto ), lee de arriba a abajo. A menudo, usted verá las excepciones que comienzan en el código de la biblioteca de Java o en los métodos de las implementaciones nativas, para el diagnóstico sólo puede saltar más allá de esos hasta que vea un archivo de código que usted escribió.
Entonces te gusta la línea indicada y miras cada uno de los objetos ( clases instanciadas ) en esa línea — uno de ellos no fue creado y trataste de usarlo. Puedes empezar por buscar en tu código para ver si llamaste al constructor de ese objeto. Si no lo hiciste, entonces ese es tu problema, necesitas instanciar ese objeto llamando a new Classname( arguments ). Otra causa frecuente de NullPointerExceptions es declarar accidentalmente un objeto con alcance local cuando hay una variable de instancia con el mismo nombre.
Java lang nullpointerexception no puede invocar
Podemos solucionar este problema moviendo las imágenes a la ruta de la carpeta de la clase. También podemos eliminar la / ya que Windows utiliza \ ~ para la ruta en Java.Y si todavía no está funcionando, podemos dar la ruta completa a las imágenes. Otras explicaciones se comentan en el código anterior.Autor: Sheeraz Gul
Sheeraz es un becario de doctorado en Ciencias de la Computación en la Universidad Politécnica del Noroeste, Xian, China. Tiene 7 años de experiencia en desarrollo de software en tecnologías de IA, web, bases de datos y escritorio. Escribe tutoriales en Java, PHP, Python, GoLang, R, etc., para ayudar a los principiantes a aprender el campo de la informática.LinkedIn
Cómo manejar la excepción de puntero nulo en java
He investigado y he encontrado que una excepción de puntero nulo se produce cuando se intenta llamar a un método en un objeto que no está instanciado. Sin embargo, en la línea 133 panels [badge.num].add (newCells [i] [j] = new Cell (this)); los elementos del array panels están todos instanciados y los elementos del array multidimensional newCells están todos instanciados. Así que no sé qué es lo que está causando la excepción del puntero nulo.8 comentarioscompartirinformar100% UpvotedEste hilo está archivadoNo se pueden publicar nuevos comentarios y no se pueden emitir votosOrdenar por: mejor
nivel 1 – hace 3 añosNo veo nada malo la primera vez que se juega, así que supongo que el error se produce cuando se selecciona el sí para REPRODUCIR el juego… Si es así, este código es un poco sospechoso:frame.newCells = null;
El array newCells es ahora nulo, por lo que cualquier intento de acceso posterior lanzará un NPE (es decir, cuando un nuevo juego llama a JPanelArray()). ¿Quieres reinicializar ese array? Debería ser algo como:frame.newCells = new Cell [3] [3];
Evitar la excepción de puntero nulo en java
A menudo los errores NullPointerException como las excepciones en el hilo “awt-eventqueue-0” java.lang.nullpointerexception son de los más fáciles de diagnosticar. Para diagnosticar y resolver la causa del error, es necesario echar un vistazo rápido al stack trace de arriba a abajo.
Una de las causas principales de este error es cuando no se llama a un constructor de un objeto pero luego se intenta utilizarlo. Otra causa es una declaración accidental de un objeto en un ámbito local que tiene otra variable de instancia con el mismo nombre. Estas son las dos causas de este error de Java. Otra causa es la escritura de código complejo que dificulta la localización del problema.
Supongamos que estás creando una simple casilla de verificación en la que el usuario puede elegir entre varias opciones y, dependiendo de lo que elija, la imagen cambia para adaptarse a su elección. Si en su código la excepción se produce en el constructor de, digamos, Retail en la línea 25, tendrá que evaluar esa línea.
En este ejemplo, está claro que hay dos objetos en esta línea que es brownshirtButton y esto. Normalmente, esto en Java es popular con la instancia de la clase en la que estás actualmente. En este caso, usted está en el constructor que no puede ser esto. En tal escenario el brownshirtButton es el culpable. Lo más probable es que no hayas instanciado ese objeto.