Java не змушує вас мати заявку "за замовчуванням", але це є гарною практикою завжди, навіть якщо код ніколи не буде досягнутий (прямо зараз). Ось кілька причин:
Маючи недоступне за замовчуванням застереження, ви показуєте читачеві свого коду, що ви вважали значення і знаєте, що ви робите. Ви також допускаєте майбутні зміни, скажімо, наприклад: додано нове значення перерахунку, комутатор не повинен мовчки ігнорувати нове значення; ви можете замість цього викинути Виняток або зробити щось інше.
Щоб застати несподіване значення (якщо ви не вмикаєте перерахунок), яке передається, воно може бути більшим або меншим, ніж ви очікували, наприклад.
Для обробки "стандартних" дій - там, де комутатори мають особливу поведінку. Наприклад, змінна може бути оголошена поза комутатором, але не ініціалізована, і кожен випадок ініціалізує її на щось інше. За замовчуванням у цьому випадку може ініціалізувати його до значення за замовчуванням, тому код відразу після перемикання не помиляється / не кидає виняток.
Навіть якщо ви вирішите нічого не ставити за замовчуванням (жодних винятків, ведення журналів тощо), навіть коментар про те, що ви вважали, що за замовчуванням ніколи не відбудеться, може допомогти читати ваш код; але це зводиться до особистих переваг.