Una palabra clave protegida Java es un modificador de acceso. Se puede asignar a variables, métodos, Constructores y clases internas.
puntos para recordar
- El modificador de acceso protegido es accesible dentro del paquete. Sin embargo, también puede ser accesible fuera del paquete, pero solo a través de herencia.
- no podemos asignar protegido a la clase externa y la interfaz.
- Si protege cualquier constructor, no puede crear la instancia de esa clase desde fuera del paquete.,
- si está sobreescribiendo cualquier método, el método sobreescrito (es decir, declarado en la subclase) no debe ser más restrictivo.
- de acuerdo con el punto anterior, si asigna protegido a cualquier método o variable, ese método o variable se puede sobrescribir a subclase utilizando solo el modificador de acceso público o protegido.
ejemplos de palabras clave protegidas
ejemplo 1
veamos un ejemplo para determinar si la variable protegida es accesible o no fuera del paquete.,
salida:
Exception in thread "main" java.lang.Error: Unresolved compilation problem: The field A.msg is not visible
Ejemplo 2
veamos un ejemplo para determinar si la variable protegida es accesible o no fuera de la clase y dentro del paquete.
Resultado:
Try to access the protected variable outside the class within the package
Ejemplo 3
Vamos a ver un ejemplo para determinar si el método protegido es accesible o no fuera del paquete.,
salida:
Exception in thread "main" java.lang.Error: Unresolved compilation problem: The method msg() from the type A is not visible
Ejemplo 4
veamos un ejemplo para determinar si el método protegido es accesible o no fuera del paquete mediante herencia.
Resultado:
Try to access the protected method outside the package using inheritance
Ejemplo 5
Vamos a ver un ejemplo para determinar si asignamos protegidas para el exterior de la clase.
Resultado:
Exception in thread "main" java.lang.Error: Unresolved compilation problem:
Ejemplo 6
Vamos a ver un ejemplo para determinar si creamos la instancia de constructor protegido desde fuera de la clase.,
salida:
Exception in thread "main" java.lang.Error: Unresolved compilation problem: The constructor A(String) is not visibles
Ejemplo 7
veamos un ejemplo para determinar si el método protegido se sobrescribe a subclase utilizando el modificador de acceso protegido.
salida:
Try to access the overridden method
ejemplo 8
veamos un ejemplo para determinar si el método protegido se sobrescribe a subclase utilizando el modificador de acceso privado.,
salida:
Exception in thread "main" java.lang.Error: Unresolved compilation problem: Cannot reduce the visibility of the inherited method from A
ejemplo 9
veamos un ejemplo para determinar si el método protegido se sobrescribe a subclase utilizando el modificador de acceso predeterminado.
salida:
Exception in thread "main" java.lang.Error: Unresolved compilation problem: Cannot reduce the visibility of the inherited method from A
ejemplo 10
veamos un ejemplo para determinar si el método protegido se sobrescribe a subclase utilizando el modificador de acceso público.
Resultado:
Try to access the overridden method