¿Cuál es la diferencia entre un nombre calificado y una expresión de acceso al campo?
Desde elDetalles de JLS sobre acceso protegido:
Sea C la clase en la que se declara un miembro protegido. El acceso está permitido solo dentro del cuerpo de una subclase S de C.
Además, si Id denota un campo de instancia o un método de instancia, entonces:
Si el acceso es por un nombre calificado Q.Id, donde Q es un nombre de expresión, entonces el acceso está permitido si y solo si el tipo de la expresión Q es S o una subclase de S.
Si el acceso es mediante una expresión de acceso de campo E.Id, donde E es una expresión primaria, o mediante una expresión de invocación de método E.Id (...), Donde E es una expresión primaria, el acceso se permite solo si si el tipo de E es S o una subclase de S.
Cuál es la diferencia entrenombre calificado yexpresión de acceso al campo?