Reino: Code Quality
Una mala calidad del código lleva a un comportamiento no predecible. Desde la perspectiva de un usuario, muchas veces también supone una usabilidad limitada. Pero para un atacante es una oportunidad para atacar al sistema de formas insospechadas.
Code Correctness: Incorrect serialPersistentFields Modifier
Abstract
Para usar
serialPersistentFields
correctamente, debe declararse como private
, static
y final
.Explanation
La especificación de serialización de objetos Java permite que los desarrolladores definan manualmente los campos serializables para una clase en la matriz
Ejemplo 1: La siguiente declaración de
serialPersistentFields
. Esta característica solo funcionará si serialPersistentFields
se declara como private
, static
y final
.Ejemplo 1: La siguiente declaración de
serialPersistentFields
no se utilizará para definir campos Serializable
porque no es private
, static
y final
.
class List implements Serializable {
public ObjectStreamField[] serialPersistentFields = { new ObjectStreamField("myField", List.class) };
...
}
References
desc.structural.java.code_correctness_incorrect_serialpersistentfields_modifier