Hola matru
Tu clase está bastante bien.
Solo te apunto una cosa para tenerla en cuenta de ahora en adelante:
Cuando se pide inicializar los atributos a sus valores por defecto se refiere a lo siguiente
String se inicializa a cadena vacía. ""
y tal como has hecho tu
int a cero. 0
y booleana false
Es cierto que en alguna clase os hemos pedido inicializar los String con "Desconocido", pero ese no es el valor por defecto para un String
---------------
Y una cosa que tienes que arreglar en tu código:
Cuando cambias la especialidad del médico se ejecuta la siguiente sentencia
System.out.println("ha cambiado la especialidad del medico de " + "ahora la especialidad es: ");
que presenta por consola:
ha cambiado la especialidad del medico de ahora la especialidad es:
donde no se dice de que médico hablamos, ni cual es su especialidad
Esta sentencia tiene que ser algo como esto
System.out.println("ha cambiado la especialidad del medico de " + nombre + " " + apellidos + " ahora la especialidad es: " + especialidad);
Y tienes que hacer lo mismo para los otros métodos set.
Saludos