Thursday 3 November 2016

JAVA main features

 JAVA main features


Java language has distinct characteristics, making it a convenient and efficient tool in the development of distributed network applications, multi-platform applications, graphical user interfaces, Web applications, multi-threaded applications and other software development. The following options to be introduced.

        (1) development and use of simplicity. Java Basic syntax style is very similar to the C + + language, but cut the pointer in C + +, operator overloading and some easy to confuse the place. In memory management and provides a garbage collection. This allows the programmer to make more effort in implementing program functionality without having to worry about minor issues such as memory release. C + + in the complex and flexible pointer operation often leads to serious errors, has always been the development of debugging staff is very difficult issues, which does not exist in Java. The Java Virtual Machine can also link local or even remote libraries to programs, so developers do not have to worry about their details. All these provide a simple application development.

        (2) distributed. Java's support for TCP / IP protocols such as HTTP and FTP makes it easy for Java programs to establish network connections and access remote files through the Uniform Resource Locator (URL), as well as accessing local files. Java's runtime system dynamically loads the bytecodes over the network, dynamically using the new protocol control software.

        (3) object-oriented. Unlike C ++, Basic syntax in Java is very strict with object-oriented and does not allow you to define variables and methods (functions) that are independent of the class. Java class and object-based, any variables and methods can only be included in a class of internal. This makes the structure of the program clearer for inheritance and reuse to bring convenience.

        (4) security. For network applications, this is extremely important. Java security as a first consideration, set up a layer of prevention. First of all compile-time syntax, semantic checks. Link, but also to re-class over and over again the type of inspection, elimination of indirect object access. At runtime, Java's run-time system will perform bytecode checking and record the object's storage to limit access to the security context. Local classes run separately from remote classes, preventing the remote system from destroying the local system. Java-enabled browsers also allow users to control Java software access to the local system. The combination of the various measures to ensure the safety of Java programs.

        (5) platform independence and portability. Java's Application Programming Interface (API) and run-time system are key to portability. Java provides a consistent API for the various operating systems that support it. In the API interface, all Java programs will not depend on the platform. Java runtime system in the interpretation of the implementation process, the bytecode into the current machine code machine. Program developers do not need to consider the application of the hardware conditions and operating system structure, the user only needs a Java runtime system, you can run compiled bytecode.

        (6) multi-threaded. Java provides built-in multi-threaded support, the program can easily create multiple threads, each thread to perform different work. This makes the program work simple. For example, with different threads, respectively, control the sound and image, you can easily build the complexity of the effect of audio and video intertwined, and programming as long as the work of the respective threads, do not care about their cooperation, which also greatly contributed to the dynamic program interactivity and real-time.

        In order to control the action of each thread, Java also provides a thread synchronization mechanism. The internal implementation of this mechanism is based on management. This mechanism allows different threads to access shared resources to cooperate with each other to ensure data consistency, to avoid errors.

        (7) explain the implementation. Java programs are compiled to form bytecodes, which are then interpreted and executed on the virtual machine. This is the Java program can be run independently of the platform. This also makes the program beneficial for incremental linking, thereby speeding up the development process