Вы можете переназначить System.out (и System.err) другому объекту, который делает то, что вы хотите с ним делать.Указанный объект обычно получает старое значение System.out, так что вывод может быть выполнен в конце.
Обычно это делается в main () и влияет на всю JVM.
Мы используем это дляиметь автоматическую упаковку в 130 столбцов в очень специфической обстановке, где более длинные строки усекаются.