¿Por qué se requiere finalizar cuando GC puede liberar todas las conexiones?

Tengo un objeto Se abrió a FileConnection.
Ahora, hice la referencia del objeto null.
Luego se ejecuta GC[ G arbage- C ollecter].
Por lo tanto, GCliberará el objeto y también cerrará el FileConnectionobjeto de Object.

Entonces, ¿por qué necesito anular el método de finalización?

Respuesta 1

No necesita anular el finalizemétodo. Mejor aún, olvídate del finalizemétodo por completo, está en desuso.

Pero debe cerrar el recurso tan pronto como haya terminado. GC puede mantener objetos no utilizados alrededor durante mucho tiempo. Si confía en los recursos del sistema de cierre de GC, puede quedarse sin elementos como identificadores de archivos, bloqueos o sockets a nivel del sistema operativo. Esos son recursos limitados.

Respuesta: 2

Tengo un programa que crea múltiples archivos de texto de triples rdf. Necesito comparar los triples y hacerlo rápido, ¿cuál es la mejor manera de hacerlo? Pensé en poner los triples en una matriz y ...

Necesito crear una clase Java que cree una copia de seguridad de mi base de datos. Mi problema es que no sé cómo hacerlo usando una base de datos SQLite. ¿Alguien puede mostrarme cómo?

Estoy en el proceso de hacer una GUI donde ingreso una cadena en un cuadro de texto y, una vez que hago clic en un botón J, un segundo cuadro de texto producirá la cadena que ingresé en el primero o producirá una cadena aleatoria ...

Quiero crear una aplicación simple capaz de editar imágenes. La vista principal de la aplicación contiene JSplitPane con dos JScrollPane. Cada JScrollPane contiene JPanel. El JPanel derecho tiene varios botones, etc. y el izquierdo ...