Why Choose JavaJava is "simple, object-oriented, and familiar" . Its syntax and program organization is certainly a lot simpler than competing languages, such as 'C++' and 'C'. Java is "robust and secure" . The designers made numerous design decisions to avoid weakness of other programming languages. Among those decisions was to include strong typing, built in array bound checking and efficient memory management. Multiple layers of checking are provided in the language architecture. Security checks range from low-level verification that bytecodes are legal, to high-level control of access to files and other system resources. Java is "architecture-neutral, interpreted and portable" . Java programs are compiled to bytecode that have no dependencies on a specific machine architecture. In order to run on a particular system, all you need is a Java Interpreter only. Java is execute with "high performance" . Some aspects of Java are very efficient, but raw speed hasn't reached the level of some popular low level languages, except in some limited cases. Java is "threaded and dynamic" . The design has made it easy to create multithreaded programs. This is one reason for Java's popularity in networked applications. The fact that running programs can be dynamically modified has had many payoffs for developers, because of the great flexibility this provides. Java has a big active community support . Java experts from around the world are ready to share valuable information on various websites that provides community support. Giving and taking advice on Java application developments from experts for free has aided in networking one of this biggest and richest community.