Programming paradigm means the way to write code
High-level programming language depends on programming paradigm.
1984 : Bjarne strostrap developed a language C++ [ C with class].
Java is a general-purpose language, truly object-oriented, high-level programming language, and a Platform by itself.
Java has predefined classes called JAVA API (Application programming interface) using them we can create a new program so JAVA is a computer programming language.
Since JAVA has its own runtime environment called JRE(java runtime environment), s JAVA is a platform.
Java is a machine, and platform independent language.
Features of Java (Buzzwords of Java)
2. Architecture Neutral -The size of primitive datatype is fixed in Java.
NOTE- In c/c++ primitive data type depoands on compiler or operating system.
3. Platform Indepandent -
We can carry bytecode and execute on any platform.
4. Compiled, and Interpreted – Compiled, and interpreted both types of language, firstly Java compiler convert source code into byte code then JAVA interpreter convert bytecode into executable code.
5. Object Oriented
Java is a truly object oriented, but not 100% because primitive datatype of java has no class.
6. Secured – java is secured language because
7. Robust (Strong)
8. High performance
Java API(Application Programming Interface)
Java API is the collection of predefined classes, and interface using them we can create new program Java has many built-in packages.
A package contains classes.
JRE(Java Runtime environment)
It is the physical implementation of JVM. It contains JVM and other files otherwise files used by JVM at the time of program execution.
JVM( Java virtual machine)
It converts bytecode into executable code
JVM Operations -
The JVM performs following operationJava Try Catch
JVM provides definitions for the:
Classloader is a subsystem of JVM which is used to load class files. Whenever we run the java program, it is loaded first by the classloader. There are three built-in classloaders in Java.
2) Method Area:- Method Area stores per-class structures such as the runtime constant pool, field and method data, the code for methods.