To write and execute a program we need the following
1) Editor– To type a program into, for example notepad,notepad++ etc.
2) Compiler – To convert high level language program into machine code
3) Linker – To combine different program files reference in your main program together.
4) Loader – To load the files from the secondary storage device like Hard Disk, Flash Drive , CD into RAM for execution. The loading is automatically done when we execute our code.
5) Execution – Actual execution of the program which is handled by OS(Operating System) & processor.
Java code compilation and execution :
 Once we write a program , we have to save with the class name.java.
 Once we execute a program Advanced java training in bangalore .java file converts into .class file
 JVM convert the .class file into machine code.
 JVM divide the memory into stack and memory memory.
 Then JVM call the class loader , class loader go back to the main class and find the all stack members and load into heap memory.
 Again control go back to the JVM , it loads the all static members into stack.
 Then it try to identifies the main method and start the execution.
 If main method is not there , then it will through the error and execution will stop.
 Once execution done JVM call garbage collector to clear the memory.
What is JVM ?
JVM is known as Java Virtual Machine. Java training center bangalore It is the engine that executes the Java Code. It converts bytecode into machines code.
1) Java compiler produces code for a Virtual Machine.
2) JVM compiled java code into bytecode. This bytecode gets interpreted on machines
3) Between host system and Java Bytecode is an intermediate language.
4) JVM is responsible for allocating a memory space.
JVM Architecture :
Classloader is a subsystem of JVM which is used to load the class files into the memory.
 Class Area(Method Area):
Class Area stores per-class structures such as the runtime constant pool, fields and methods, code for methods.
Java Stack stores frames.It holds local variables and partial results, and plays a part in method invocation and return.Each thread has a private JVM stack, java /j2ee classes bangalore created at the same time as thread.
A new frame is created each time a method is called. A frame is destroyed when its method call completes.
 Native Method Stack:
Native Method Stack contains all the native methods used in the application.
Heap is the runtime data area in which objects are allocated and stored.
 Program Counter Register:
PC (program counter) register contains the address of the Java virtual machine instruction currently being executed.
 Execution Engine :
Execution Engine contains :best core java training in bangalore
i) A virtual processor
ii) Interpreter: Read bytecode stream then execute the instructions.
iii) Just-In-Time(JIT) compiler: It is used to improve the performance.JIT compiles parts of the byte code that have similar functionality at the same time, and hence reduces the amount of time needed for compilation.
Working of JVM:
The JVM performs following works :
1)Loads the java code
2)Verifies the code
3)Executes the code
4)Provides runtime environment
Java is both compiled and interpreted language :
Compiler : A compiler is a program which converts a program from one level of language to another. Example conversion of C++ program into machine code.
The java compiler converts java course in bangalore high level java code into bytecode .
Interpreter : A interpreter is a program which converts a program at one level to another programming language at the same level. In Java , the JVM converts the bytecode into the native machine code
Hence java is both compiled and interpreted interpreted language.
Infocampus is one of the best institute that provides Advanced Java Training in Bangalore with the live project. Training on Java Course is provided in lesser fees and payment installament facility is available for java training.Learn OOPs concept, Packages,Spring, Servlet , Hibernate etc in core & advanced java classes. Join Infocampus and get 100% job support. Infocampus provides java/j2ee classes by the more than 10 years experienced trainers. For the best core java training ,mock test is conducted every weekend.
For the free demo classes call at: 9738001024 or to know about the syllabus for the java training enquire at : http://www.infocampus.co.in/java-training-bangalore.html