Java binaries are shipped across the network and executed on client machines. Security is therefore a critical issue and strongly enforced in Java.
-
Java contains its own networking classes which are designed to be secure
|
Modifications of the C++ model such as eliminating pointer arithmetic and coercion were dictated mainly by the security requirements.
|
Most viruses are based on acquiring access to private/protected sectors of computer memory which is impossible in Java.
|
Java opcodes are executed at the client side by Java interpreter which operates exclusively on the virtual memory. Hence, unless there are security bugs in the Java interpreter itself, the model is safe and users cannot create security holes by incorrectly or maliciously written applets.
|
The byte codes sent across network are verified at the client which prevents evil/corrupted classes from causing problems
|