O heap Java existe na RAM (Random Access Memory). Quando um aplicativo Java é iniciado, a Java Virtual Machine (JVM) aloca uma região de memória chamada heap. O heap é onde os objetos são armazenados enquanto o aplicativo está em execução. É onde residem todos os objetos criados pelo aplicativo.
O tamanho do heap pode ser controlado configurando a opção -Xmx ao iniciar a JVM. Esta opção especifica a quantidade máxima de memória que a JVM pode alocar para o heap.
O heap não faz parte do disco rígido. O disco rígido é usado para armazenar o código do aplicativo e outros arquivos necessários para executar o aplicativo. O heap é criado na RAM porque precisa ser acessado muito rapidamente pela JVM. A RAM é muito mais rápida que o disco rígido, por isso é ideal para armazenar dados que precisam ser acessados com frequência.