Hola momo!
He revisado tu código y he notado que contrario a lo que pide el enunciado del ejercicio
(pide un parámetro por cada variable)
has decidido pasar al constructor de la clase solo algunos parámetros, los cuales inicializaran 3 de las 5 variables de la clase, lo que no es problema si así lo has decidido. Los puntos que si serian conveniente corregir son los siguientes:
1: Todas las variables se deben declarar privadas, ejemp: private String nombre, private String apellidos, private ...ect.
2: Lo correcto es inicializar variables tipo boolean con valor false. Ejemp: casado = false; especialista = false.
3: Omites 3 de los 5 setters que requiere la clase. Esto no es conveniente, las 3 variables que reciben su valor mediante parámetros en el constructor, son justo las 3 variables que se corresponderían con los setters faltantes. un parámetro en un constructor no sustituye el trabajo de un método setter, puesto que un método setter cambiaría el valor de la variable en cualquier momento, contrario a un parámetro en el constructor que solo asigna un valor a la variable cuando se crea un objeto.
Mediante un metodo setter para variables como casado y/o especialista, entonces podrías asignar como valor, true.
Que harías si tuvieses que cambiar el nombre del bombero luego de haber creado el objeto, o su apellido, o su edad?
Tu código compila y trabaja correctamente, pero mencionadas las debilidades anteriores, le falta eficiencia al diseño.
Saludos!