JDK, JRE, JVM: What Are They and What Are Their Differences?

Today, we’ll discuss the Java Development Kit, Java Runtime Environment, Java Virtual Machine and what the differences are among these three. If you want to learn more about this topic, you’re in the right place.

Today’s video is brought to you by The Learn Programming Academy’s Java Programming Masterclass for Software Developers

Beginning C++ Programming – From Beginner to Beyond

My name is Tim Buchalka and I have put together a series of videos which I call the “Programming Tip of the Day”. And basically, each video goes through talking about some of the pitfalls and things that you’ll need to overcome to succeed as a programmer, things like overcoming frustration and keeping yourself motivated.

In this series I will also answer common questions about choosing a programming language to learn, questions about your career path and things of that nature. Now there’s a lot of other things as well that I’ll cover in these videos and I’m also opening the lines for you to tell me what you want me to cover.

Now I’ve been a programmer for over 35 years so I think I’m really qualified to answer a lot of these questions. So if you do have a question, pop the question in the comments section of this video and I’ll do my best to address that in a future video.

If you’re ready to look at the next tip, click on the link below to get redirected to the playlist for all programming tips:

If you’re interested in coding specific programming videos, click on the link below to get redirected to the playlist for programming videos:

Consider subscribing by clicking on the Subscribe button right below the video.

Where to find out more about me:

My Video Courses





The Learn Programming Channel

February 23, 2020

Watch Tim's Free Learn to Code Course on Youtube!


Super Luigi

February 23, 2020

Hi Tim, do you have an intermediate level java course?


Cristian Reynoso-Betancourt

February 23, 2020

Thank you so so much for the video explaining the differences between JDK, JRE, and JVM. I really appreciate it!!!



February 23, 2020

This is a great introduction video. I appreciate it!
It would be great if you can create a video which goes in more depth about these general concepts (or even class lecture on udemy or similar, I think lot of people would be more then rather to subscribe to those – I know I would).
1. General implementations of JVM – history – which language is used for JVM implementations to run compiled java code (since we have multiple VM implementations, common oracle written in c++ ). There are multiple compilers as well (common one is the javac compiler by oracle that is mainly written in C) … why multiple of them .. how? Beef between google and oracle 🙂 (dalvik vs oracle vm … ) what is happening there from perspective of tech details …
2. Now when OracleJDK is "subscribe on" and when you need to pay for it… what kind of ifferences we have between openJDK and OracleJDK speed wise .. Based on my limited knowledge about this subject, i saw that there is a decent amount of difference based on the benchmark results … – is openJDK suitable for programming enterprise scale softwares (especially network related microservices across multiple machines) ?
Even maybe to explain subscription principle (per core, machine etc … in more details, based on example … this part is extremely confusing … eg. if you have x amount of machines with 2 core processor each running java, how much you need to pay per month?)

I think those twos above are interesting subjects – and it would be great if you can shed some light on those 🙂


Vishal Krishna

February 23, 2020

Java development kit 8 they bundle jre with that.

Why not Oracle developed a new runtime environment for JDK 11.

Till now I can't understand the policies of Java and what Oracle is doing.

Now I am using JDK 11 at this stage and doing simple programs I just practicing "Udemy masterclass Java course" . In in addition I just practice to make a connection between the Java and MySQL database it requesting a runtime environment.

JDK 11 doesn't have a runtime environment what can I do with that i need the runtime environment.


Leave a Reply