2012-01-12 15 views
6

¿Hay alguna razón viable por la que el campo serialVersionUID no se llame SERIAL_VERSION_UID?serialVersionUID convención de nomenclatura

De acuerdo con la documentación para java.io.Serializable:

Una clase serializable puede declarar su propia serialVersionUID explícitamente declarando un campo denominado "serialVersionUID" que debe ser estática, última, y de tipo long:

ANY-ACCESS-MODIFIER estático final largo serialVersionUID = 42L;

Al referirse Java Naming Conventions todos static final (constantes) campos deben capitilized que tiene sus fragmentos separados por un guión.

+1

Así se escribe la API de serialización;) – fge

Respuesta

4

Probablemente porque serialVersionUID se definió en la API de serialización de Java antes de que existieran tales convenciones.

me encontré con un documento publicado por Sun en 1997 llamado Java Code Conventions que dice en la Sección 9 en la página 16 "Los nombres de las variables declaradas constantes de clase y de ANSI constantes deben alluppercase con palabras separadas por guiones bajos (‘’). "_

Así que mi suposición es que Sun simplemente no hizo cumplir sus propios estándares en su propio código.

+0

No lo creo, serialVersionUID se introdujo en Java 1.5 –

+1

Estoy corregido, y he editado mi comentario. – Dev

Cuestiones relacionadas