Java is a general purpose, object orientated computer programming language. It is designed to have as few implementation dependencies as possible. As such it produces an intermediate output that is understood by the Java Virtual Machine (JVM). The JVM is responsible for running Java based programs. The JVM is developed on each different computing platform that needs to have Java applications deployed. As a result of this platform independence for Java applications it has been widely adopted as a programming language for developing network control systems and network applications. Any platform that has a standard JVM will be able to run Java applications.