Java code database updating
This document has been updated to cover some of the new features included in Java SE 9.However, these guidelines are also applicable to software written for previous versions of Java.
While adding features to software can solve some security-related problems, it should not be relied upon to eliminate security defects.The following general principles apply throughout Java security. Despite the unusually robust nature of Java, flaws can slip past with surprising ease.Design and write code that does not require clever logic to see that it is safe.Java comes with its own unique set of security challenges.While the Java security architecture  can in many cases help to protect users and systems from hostile or misbehaving code, it cannot defend against implementation bugs that occur in code.These guidelines are of interest to all Java developers, whether they create trusted end-user applications and applets, implement the internals of a security component, or develop shared Java class libraries that perform common programming tasks.
Any implementation bug can have serious security ramifications and could appear in any layer of the software stack.
The Java language  and virtual machine  provide many features to mitigate common programming mistakes.
The language is type-safe, and the runtime provides automatic memory management and bounds-checking on arrays.
These bugs can potentially be used to turn the machine into a zombie computer, steal confidential data from machine and intranet, spy through attached devices, prevent useful operation of the machine, assist further attacks, and many other malicious activities.
The choice of language system impacts the robustness of any software program.
Performing threat modeling and establishing trust boundaries can help to accomplish this (see Guideline 0-4).