2. How Java Program Works and its 3 Important Components (JVM, JRE and JDK) with Example

Поделиться
HTML-код
  • Опубликовано: 9 июл 2024
  • ➡️ Notes link: Shared in the Member Community Post (If you are Member of this channel, then pls check the Member community post, i have shared the Notes link there)
    ➡️ Join this channel to get access to member only perks:
    / @conceptandcoding
    In this video, i explained in detail about the 3 important components of Java:
    - JVM (Java Virtual Machine)
    - JRE (Java Runtime Environment)
    - JDK ( Java Development Kit)
    I also explained, from where to download the Java.
    You will also get information about :
    - JSE (Java Standard Edition)
    - JEE ( Java Enterprise Edition)
    - JME (Java Micro Edition)
    And at last we will write our FIRST JAVA PROGRAM and will set how it works.
    #java #objectorientedprogramming #firstjavaprogram

Комментарии • 48

  • @ankitshaw_3060
    @ankitshaw_3060 6 месяцев назад +17

    If any one wants to know why main method is void so the short answer is because it does not return anything but if you want to know in depth about why main method in java returns void but in C/C++ it returns 0, then this is the reason behind it :- The C and C++ program which return int from main method are processes of operating system . The int value returned from the main in C and C++ is exit code or exit status.
    Exit Code 0 --> means successful termination
    Exit Code non-zero ---> indicates an error
    The parent process of any child process keeps waiting for the exit status of the child and after receiving that exit status of child it clears up the child process from the process table and free the resources allocated to it . That is why it becomes mandatory for C and C++ program to pass their exit status . However, the java program runs as a main thread in JVM. The java program is not even a process of operating system directly this is why main method of java is not designed to return an exit status. However, JVM is a process of Operating system and JVM can be terminated with a certain exit status with help of System.exit(int status).

  • @grrlgd3835
    @grrlgd3835 Месяц назад +1

    excellent. great teaching

  • @abhijittalukdar9429
    @abhijittalukdar9429 Год назад +2

    undeerstood clearly.

  • @priyam86f
    @priyam86f 9 месяцев назад +6

    Thankyou so much for this series. Why i am learning from you and not the big channels, because I see that experienced engineer in you,which even i look forward to be in the future. I believe, knowledge with experience is something really amazing. Currently preparing for my on-campus placements and this series is really helping. Just a question, if i buy your membership, are more JAVA videos available there? thanks.

    • @ConceptandCoding
      @ConceptandCoding  9 месяцев назад +1

      hi Priyam, with just 159rs, the whole playlist will get open, till now uploaded 28 videos of in depth java, and more going to add soon.

    • @chethannaik6333
      @chethannaik6333 6 месяцев назад +1

      Hi priyam can you suggest good RUclips channel for operating system, dbms and web development.

  • @ashishshandilya2286
    @ashishshandilya2286 Год назад +3

    I am working from rival for PayPal, which until now written core components in c++, with influx from folks from PayPal we are now moving to Microservices. Hence forced to learn java and spring.Hope this one will ramp me up. :(. Thanks for the content.

  • @leviuzumaki5059
    @leviuzumaki5059 4 месяца назад +1

    Nice

  • @knowledgeascend
    @knowledgeascend Год назад +1

    Hey Srayansh, Great video.
    Just a small query, does JRE contains bytecode of class libraries or will the java code contained in them will be converted to Byte code by java compiler ?

    • @ConceptandCoding
      @ConceptandCoding  Год назад +3

      Those libraries are already compiled and have .class files also. JVM does the linking and use them.

    • @knowledgeascend
      @knowledgeascend Год назад

      Understood , Thanks!

  • @Badalkumar-me9ok
    @Badalkumar-me9ok 9 дней назад

    How to get the .class file from a .java file in eclipse

  • @soumyasatish7941
    @soumyasatish7941 5 месяцев назад +1

    Hi Shreyansh, which ide are you using in this video? Can you recommend an IDE for Windows?

  • @fv5895
    @fv5895 Год назад +3

    Nice lecture dude. One question: if JVM reads the code line by line and converts to machine code( which is a definition of an interpreter ), could you tell why is it called "Just in time compiler".

    • @ConceptandCoding
      @ConceptandCoding  Год назад +9

      Good question buddy:
      Let me try to explain:
      Generally JVM convert the bytecode to machine code using Interpretor.
      But internally JVM also maintains the counter for each method, and once it identifies that's particular method is called very frequently, it passes that method to JIT(just in time compiler).
      JIT has capability to do certain optimization (like removing dead code etc ) and another capability is Reusing of frequently used method machine code (not need to interpret again and again).
      So it helps in increasing the performance of JVM a lot and hence name JIT :)
      Hope it clear or we can discuss more

    • @fv5895
      @fv5895 Год назад +1

      @@ConceptandCoding its clear :-). Thank you

    • @vallabhchugh2075
      @vallabhchugh2075 3 месяца назад

      good question. we need more such

  • @akarshkumarsrit2518
    @akarshkumarsrit2518 11 месяцев назад +1

    if my code doesnt use any java lib it would just need jvm to run right ?

  • @suryaprakash7980
    @suryaprakash7980 5 месяцев назад +1

    bro, pls put a specific videos about jar, war and ear files

  • @pleasantdayNwisdom
    @pleasantdayNwisdom 6 месяцев назад +1

    Video 5 learning continues

  • @arishsheikh3000
    @arishsheikh3000 4 месяца назад +1

    Please add exception handling

  • @yogendramaurya1741
    @yogendramaurya1741 11 месяцев назад +2

    Started today, let's see how far I go.🤞

  • @sumitbasu5146
    @sumitbasu5146 Год назад +2

    Hi Srayansh, may be it is not a valid question but still let me ask it.
    If the jvm converts the bytecode to machine code and cpu will execute the machine code, then how JVM invokes/calls the main method at runtime? It should be CPU that calls the main method r8?

    • @ConceptandCoding
      @ConceptandCoding  Год назад +1

      Hi Sumit, Machine code is in binary form 0 and 1.
      CPU do not understand high level language or bytecode. It understand sequence of instructions in binary form 0 and 1. So calling main method is not possible for CPU as all instructions it's in 0 and 1 only.

    • @sumitbasu5146
      @sumitbasu5146 Год назад

      My doubt is machine code will execute finally to display the output then at runtime with the machine code level why we are talking about "JVM will invoke the main method "?

    • @ConceptandCoding
      @ConceptandCoding  Год назад +1

      @@sumitbasu5146 sorry did not get it.
      Jvm is the one which invoke main method at Runtime and convert it to machine code (0 and 1) which CPU will execute directly.

    • @sumitbasu5146
      @sumitbasu5146 Год назад +1

      Now I got it..Thank you so much 👍

    • @knowledgeascend
      @knowledgeascend Год назад +4

      @@sumitbasu5146 JVM interprets bytecode line by line and converts it to machine code for execution, thus JVM calls main method, converts it into machine code and passes to cpu for execution.

  • @sambhav07
    @sambhav07 Месяц назад

    If jre already has class libraries then what is meant by "jdk has programming language"? jdk has compiler and debugger and that is a valid point but not able to understand difference between class libraries in jre and programming language in jdk?

    • @ConceptandCoding
      @ConceptandCoding  Месяц назад +1

      umm, Programming Language (Java), Refers to the syntax, semantics, and core libraries used to write Java applications. The JDK provides the tools to write (using the language), compile, and debug Java code.

  • @singhji4149
    @singhji4149 9 месяцев назад

    For LLD WILL U ADD VIDEOS OF PAYMENTS APP AND FOODING APPS( ZOMATO SWIGGY DESIGN)

  • @ManishVerma-si8nv
    @ManishVerma-si8nv 11 месяцев назад +1

    Hello Shrayansh,
    I have one doubt...If I have written a program in Java and wants to run it in a mobile phone...does the phone require JVM or JRE ???

    • @ConceptandCoding
      @ConceptandCoding  11 месяцев назад

      There are Java emulator software you need buddy, through which you can run Java code on phone

    • @vyankateshkulkarni4374
      @vyankateshkulkarni4374 9 месяцев назад

      in JRE , jvm will be there. you need JRE only to run bytecode

  • @anishkr7888
    @anishkr7888 Год назад +1

    Hi Anish here. Done with this video

  • @akhilbhatia7211
    @akhilbhatia7211 6 месяцев назад +1

    can i have notes of these lecture for quick interview revision ?

    • @ConceptandCoding
      @ConceptandCoding  6 месяцев назад +2

      i will try to add in description section

    • @thecoderstv22
      @thecoderstv22 5 месяцев назад

      www.youtube.com/@thecoderstv22