For Java you need a JRE and JDK depending on whether you're just running or also building. That they are bundled (for Windows) is slightly convenient, but they're not bundled on Linux so what you're saying is OS dependent
JRE or JDK, not "and". The JDK is a superset of the JRE.
JRE or JDK, not "and". The JDK is a superset of the JRE.