πŸ’» Step 3:Java Components (jvm/jre/jdk) : 1st hour

Get this on action on youtube –

ComparisonJDKJREJVM
DefinitionA software development kit used to develop Java applicationsA software package that contains what is required to run a Java applicationAn abstract computing machine that enables a computer to run a Java program
IncludesCompiler (javac), interpreter (java), libraries, documentation, other toolsInterpreter (java), libraries, Java Plug-in (for running Java applets in a web browser)JIT, Libraries and class files
PurposeTo develop Java applicationsTo run Java applicationsTo execute Java bytecode
InstallationRequired to develop Java applicationsRequired to run Java applicationsComes bundled with JDK or JRE

πŸ’‘(1) J.V.M (Java Virtual Machine)-

J.v.m = j.i.t(just-in-time compiler)+cache

πŸ’‘-> J.v.m Doesn’t exists physically, It just resides in RAM

πŸ’‘-> J.v.m provides specifications to execute java byte-code.

πŸ’‘-> J.v.m is platform dependent and easily available for many platforms(OS)

Note – We can’t refer any particular file as windows, it’s a group of specifications which provides environment to run software, similarly JVM only runs Java compiled codes(bytecodes).

*JVM internal architecture*-

πŸ’‘(2)JRE (Java Runtime Environment)-

πŸ’‘β€“> implementation of JVM.

πŸ’‘β€“> physically exists.

JRE = JVM + Set of libraries (i.e. jar) + Other Files

Note – To run java program we only need to install JRE, to develop java program we need to install JDK.

πŸ’‘(3)JDK (Java Development Kit)-

πŸ’‘β€“> physically exists.

πŸ’‘ JDK = JRE + Development tools(i.e. javac, java etc)

Interview Questions β€”

  • How to install JVM?
  • Is Windows JVM different than Linux/Mac JVM?
  • Does installing JDK automatically installs JRE and JVM ?

4 comments

  1. you can consider jvm as a computer for which machinre language is bytecode .
    And jre builds this virtiual computer (i.e jvm) on your machine(p.c) so it can run program .

  2. Sir can you plz elaborate some useful tools(Java,javaw,javap etc.) of jdk

    • yes, of course…
      Basic Tools
      These tools are the foundation of the JDK. They are the tools you use to create and build applications.
      1-javac The compiler for the Java programming language.
      2-java The launcher for Java applications.
      3-javadoc API documentation generator.
      4-apt Annotation processing tool.
      5-jar Create and manage Java Archive (JAR) files.
      6-jdb The Java Debugger.
      7-javap Class file disassembler

Leave a Reply

Your email address will not be published. Required fields are marked *