Java Design Pattern
Introduction to Java 10
Introduction to Java 11
Introduction to Java 12

Java Features

  • 1. JAVA is simple and portable.
  • Simple means easy to develop, easy to execute, easy to run a Java program.Portable means what ever we write a JAVA program, that should be understandable by any no. of users.

  • 2. JAVA is object-oriented.
  • 3. JAVA is compiled and interpreted programming language, hence Java is called as two-stage system.


Here let we have a Java program( after writing Java program, we compile it. Java compiler(javac) is responsible to compile. The successful compilation of Java program is a .class file which is called as byte code.
Byte code is not machine instruction, so JVM(Java Virtual Machine) takes byte code and converts into machine instruction. After converting into machine instruction, JVM providing a Java execution engine that is Java interpreter(java) executes the program. Once Java program successfully executed, then an .exe file will generate, at that point we will get the program output.
So here we observed that for the development and execution of a Java program, both Java compiler(javac) and interpreter(Java) is functioning, that’s why Java is called as two-stage system.

  • 4. Java is platform independent
  • This is one of the main advantage of Java. Here platform refers to Operating System. Platform independent means what ever JVM converts byte code into machine instruction for a particular program in one operating system(let windows os), same machine instruction will generate in every operating system like Mac, Linux, Solaris etc. that’s why we say once we write a Java program, we can execute in every operating system without any change.

  • 5. Java is robust.
  • Due to two points Java is robust, that is:

    • a) Collect garbage automatically.
    • b) Handles exception by implementing exception handling mechanism.

  • 6. Java is highly secured.
  • 7. Java is multithreaded.
  • Executing multiple tasks simultaneously where each task is a separate independent thread in a program is known as thread based multitasking. This thread based multitasking is known as multithreading which is one of the main advantage of JAVA. Here a thread represents a job or a task.

  • 8. Java is dynamic.
  • In Java programming when the concept of memory allocation is coming to the picture then that memory will be dynamic memory. For exa; an array, an object etc. When the memory is allocating by a reference, then that memory we say as dynamic memory.

  • 9. Java is distributed.

About the Author

Silan Software is one of the India's leading provider of offline & online training for Java, Python, AI (Machine Learning, Deep Learning), Data Science, Software Development & many more emerging Technologies.

We provide Academic Training || Industrial Training || Corporate Training || Internship || Java || Python || AI using Python || Data Science etc