Поскольку здесь есть несколько ответов, показывающих нерабочий код для Windows, вот разъяснение:
Runtime.getRuntime().exec("cls");
Эта команда не работает по двум причинам:
В стандартной установке Windows нет исполняемого файла с именем cls.exe or cls.com, который можно было бы вызвать через Runtime.exec, поскольку хорошо известная команда cls встроена в интерпретатор командной строки Windows.
При запуске нового процесса через Runtime.exec стандартный вывод перенаправляется в канал, который может прочитать инициирующий Java-процесс. Но когда вывод cls команды перенаправляется, консоль не очищается.
Чтобы решить эту проблему, мы должны вызвать интерпретатор командной строки (cmd) и указать ему выполнить команду (/c cls), которая позволяет вызывать встроенные команды. Далее мы должны напрямую подключить ее выходной канал к выходному каналу Java-процесса, который работает, начиная с Java 7, используя inheritIO():