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.
Here let we have a Java program(MyExample.java) 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.
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.
Due to two points Java is robust, that is:
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.
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.
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