En términos de "Layman", me preguntaba si alguien podría explicarme la importancia y la importancia general de importar la clase Serializable para implementar la interfaz java.io.Serializable. preguntado por el estudiante de Java¿Cuál es el significado de la clase java.io.Serializable?
Respuesta
java.io.Serializable
es lo que se conoce como una "interfaz de marcador". La interfaz en sí no tiene métodos definidos en ella. Por lo que cualquier clase puede implementar fácilmente esta interfaz, simplemente implementando es:
public class MyClass implements Serializable {
public void aMethodForMyClass() { }
// not implementing any specific java.io.Serializable methods because
// the interface has no methods to implement.
}
Es una interfaz de "marcador", porque mediante la implementación de esta interfaz le está diciendo al serializador Java que está bien para serializar objetos de este tipo. Si su clase no implementa esta interfaz, el serializador se negará a serializar cualquier objeto de ese tipo.
También significa que promete que todas las variables que componen un objeto de esta clase también se pueden serializar o que implementa el código necesario para manejarlas de todos modos. – JenEriC
serializador Java? – JAVA
Esto es algo que ocurre en tiempo de compilación o en la JVM. En otras palabras, si no implemento Serializable y trato de serializar una clase ¿encontraré errores de compilación o de tiempo de ejecución? – BrightIntelDusk
Todo lo que necesita saber acerca de Java La serialización se pueden encontrar en la Java Serialization Specification
El Java Serialization FAQ también contiene la respuesta a su pregunta.
Específicamente, la primera pregunta parece ser la misma que está pidiendo:
Why must classes be marked serializable in order to be written to an ObjectOutputStream?
espero que ayude!
- 1. ¿Cuál es el significado de []
- 2. ¿Cuál es el significado de ∃?
- 3. ¿cuál es el significado de no-js clase en HTML5
- 4. ¿Cuál es el significado de ".. ::." Cª#?
- 5. ¿Cuál es el significado del término "Clase personalizada"?
- 6. ¿Cuál es el significado de erb?
- 7. ¿Cuál es el significado de view.bounds.origin?
- 8. ¿Cuál es el significado de esta sintaxis?
- 9. ¿Cuál es el significado de ORM?
- 10. ¿Cuál es el significado de android.location.LocationManager.PASSIVE_PROVIDER?
- 11. ¿Cuál es el significado SQL de 0x5E5B7D7E?
- 12. ¿Cuál es el significado de este typedef?
- 13. ¿Cuál es el significado de "sintético estático"?
- 14. ¿Cuál es el significado de '_' en python?
- 15. ¿Cuál es el significado de 'sourceSets.all *'
- 16. ¿Cuál es el significado de '==' en C?
- 17. ¿Cuál es el significado de <#= #>
- 18. ¿Cuál es el significado de "unidad Hero"?
- 19. ¿Cuál es el significado de id?
- 20. ¿Cuál es el significado de CTOR?
- 21. ¿Cuál es el significado de @_ en Perl?
- 22. ¿Cuál es el significado de Transaction?
- 23. ¿Cuál es el significado de svg: svg?
- 24. ¿Cuál es el significado de $$ en Ruby?
- 25. ¿Cuál es el significado del operador &?
- 26. ¿Cuál es el significado de "espacio de clase de valor es plano"?
- 27. ¿Cuál es el significado real de la palabra clave "this"?
- 28. ¿Cuál es el significado de la directiva {$ C PRELOAD}?
- 29. ¿Cuál es el significado de la carpeta ProgramData en Windows?
- 30. ruby: ¿Cuál es el significado de la palabra clave "en"
Esto puede darle cierta información útil: http://stackoverflow.com/questions/441196/why-java-needs-serializable-interface – Rahul
'Serializable' es una interfaz y no una clase. –