Hola, el fallo está en el mismo concepto de excepción que estás considerando.
Si el usuario debe introducir un número que empiece por 5 o que tenga 5 dígitos y no lo hace, esto no genera un error java (una excepción), desde el momento en que el método nextInt() que estás utilizando admite que se le pase cualquier número. Por tanto no debes pensar en tratar con un try - catch una situación de este tipo.
Si el usuario introduce un número que no empieza por 5 está incumpliendo una condición, y el cumplimiento o incumplimiento de condiciones se deben tratar con condicionales if...
if (primerNumero == 5) { ... tratamiento normal ... } else { ... mensaje de error ... }
Una excepción java puede ser un acceso a fichero que está dañado o no existe, una inderminación matemática, o incluso que el usuario introduzca una letra cuando se usa el método nextInt(), o que introduzca un número excesivamente grande (fuera del rango de los int) dado que java espera un tipo int y se le pasa otra cosa. En ese caso sí podrías hacer uso de la gestión de errores con try - catch, pero no para el caso de que no se cumpla una condición, sino para el caso de generarse una verdadera excepción. Saludos