Page 179 - PowerPoint Presentation
P. 179
CAVITE STATE UNIVERSITY
T3 CAMPUS
Department of Information Technology COSC 65 – Programming Languages
Java Code Compiler Byte Code
HelloWorld.java HelloWorld.class
2. What happens at runtime?
At runtime, the following steps are performed:
Class File Classloader Bytecode Interpreter Runtime Hardware
Verified
Classloader: is the subsystem of JVM that is used to load class files.
Btyecode Verifier: checks the code fragments for illegal code that can violate
access rights to objects.
Interpreter: read bytecode stream then execute the instructions.
3. Can you save a java source file by other name than the class name?
Yes, if the class is not public. It is explained in the figure given below:
class Simple {
public static void
main(String[] args) { Compiler Bytecode
System.out.println(“Hello”); Simple.class
}
} Hard.java
To Compile: javac Hard.java
To Execute: java Simple
4. Can you have multiple classes in a java source file?
Yes, like the figure given below.
A.class
class A{}
class B{} Compiler B.class
class C{}
C.class
ALL.java
Difference between JDK, JRE and JVM
JVM (Java Virtual Machine) is an abstract machine. It is called a virtual machine because it
doesn’t physically exist. It is a specification that provides a runtime environment in which
Java bytecode can be executed. It can also run those programs which are written in other
languages and compiled to Java byte code.
JVMs are available for many hardware and software platforms. JVM, JRE, and JDK are
platform independent because the configuration of each OS is different form each other.
However, Java is platform independent. There are three notions of the JVM: specification,
implementation and instance.
Page | 38