O que são JDK e JRE?
O JRE é o Java Runtime Environment. É um pacote de tudo o que é necessário para executar um programa Java compilado, incluindo a Máquina Virtual Java (JVM), a Biblioteca de Classes Java, o javacommand, e outra infra-estrutura. Entretanto, ele não pode ser usado para criar novos programas.O JDK é o Java Development Kit, o SDK completo para Java. Ele tem tudo o que o JRE tem, mas também o compilador (javac) e ferramentas (como javadoc e jdb). Ele é capaz de criar e compilar programas.
Usualmente, se você só se preocupa em executar programas Java no computador, você só instalará o JRE. It'é tudo o que você precisa. Por outro lado, se você está planejando fazer alguma programação Java, você precisa instalar o JDK no lugar.
Por vezes, mesmo que você não esteja planejando fazer nenhum desenvolvimento Java em um computador, você ainda precisa do JDK instalado. Por exemplo, se você estiver implantando uma aplicação web com JSP, você está tecnicamente apenas executando programas Java dentro do servidor de aplicações. Por que você precisaria do JDK então? Porque o servidor de aplicações irá converter JSP em servlets Java e precisa usar o JDK para compilar os servlets. Tenho certeza que existem mais exemplos.