Это действительно зависит от версии и от выбранных сборщиков мусора.Я обнаружил, что java 1.8.0_73 иногда выпускает небольшие объемы обратно в ОС по умолчанию.Это самая ранняя версия, которую я помню, когда видел ее без необходимости настройки параметров JVM, но она вполне может применяться к более ранним версиям, я не знаю точную версию.
Если параметры не настроены, по умолчанию это вероятноне выпустит ничего, если не используется 60-70% вашей кучи.
Здесь может лежать соображение производительности - Java имеет репутацию медленной, поэтому по умолчанию JVM может попытаться минимизировать выделение из ОС и сделать сборку мусора настолько эффективной, насколько это возможно, удерживая большое количествопамяти и делать это реже.
Интересно, может ли оно быть менее скупым с памятью, если в ОС осталось относительно мало свободной памяти??