Unsafe Mobile Code: Dangerous Public Field

Abstract
The program violates secure coding principles for mobile code by declaring a member variable public but not final.

Description
All public member variables in an Applet and in classes used by an Applet should be declared final to prevent an attacker from manipulating or gaining unauthorized access to the internal state of the Applet.

For more details about mobile code and its security concerns, please see Category:Unsafe Mobile Code.

Examples
The following Java Applet code mistakenly declares a member variable public but not final.

public final class urlTool extends Applet { public URL url; ...	}