Приходилось использовать это в реальных приложениях, одно из преимущество возможность нормально остановиться не получая интеррапты на заблокированные треды и прочие радости кила. Ещё одним из плюсов была возможность логировать весь процесс остановки, т.к. логгеры умирающие по addShutdownHook как правило закрываются раньше.
когда познакомился с sun.misc.SignalHandler;, то тоже написал подобный класс :)
и содержимое вашего класса очень похоже на мое… по какому-то примеру в инете…
Использование пакетов sun.* делает вашу программу непереносимой. Она может даже на следующей версии не заработать, когда пакет перенесут, скажем, в com.sun.*
Обработка сигналов в Java