et Java protected key .ord er en adgangsmodifikator. Det kan tildeles variabler, metoder, konstruktører og indre klasser.
punkter at huske
- den beskyttede adgangsmodifikator er tilgængelig i pakken. Det kan dog også være tilgængeligt uden for pakken, men kun gennem arv.
- Vi kan ikke tildele beskyttet til ydre klasse og grænseflade.
- hvis du gør en konstruktør beskyttet, kan du ikke oprette forekomsten af denne klasse uden for pakken.,
- hvis du tilsidesætter en metode, må tilsidesættelsen af metoden (dvs.erklæret i underklassen) ikke være mere restriktiv.
- i henhold til det foregående punkt, hvis du tildeler beskyttet til en metode eller variabel, kan denne metode eller variabel tilsidesættes til underklasse kun ved hjælp af offentlig eller beskyttet adgangsmodifikator.
eksempler på beskyttet nøgleord
eksempel 1
lad os se et eksempel for at afgøre, om den beskyttede variabel er tilgængelig eller ikke uden for pakken.,
Output:
Exception in thread "main" java.lang.Error: Unresolved compilation problem: The field A.msg is not visible
Eksempel 2
Lad os se et eksempel for at afgøre, om der er beskyttet variabel er tilgængelige eller ikke er uden for klassen og i den pakke.
Output:
Try to access the protected variable outside the class within the package
Eksempel 3
Lad os se et eksempel for at afgøre, om de beskyttede metode er tilgængelige eller ikke uden pakken.,
Output:
Exception in thread "main" java.lang.Error: Unresolved compilation problem: The method msg() from the type A is not visible
Eksempel 4
Lad os se et eksempel for at afgøre, om de beskyttede metode er tilgængelige eller ikke uden pakken med arv.
Output:
Try to access the protected method outside the package using inheritance
Eksempel 5
Lad os se et eksempel for at afgøre, om vi tildele beskyttet til den ydre klasse.
Output:
Exception in thread "main" java.lang.Error: Unresolved compilation problem:
Eksempel 6
Lad os se et eksempel for at afgøre, om vi skabe forekomst af beskyttede constructor fra uden for klassen.,
Output:
Exception in thread "main" java.lang.Error: Unresolved compilation problem: The constructor A(String) is not visibles
Eksempel 7
Lad os se et eksempel for at afgøre, om de beskyttede metode er tilsidesat, sub-klasse ved hjælp af protected access modifier.
Output:
Try to access the overridden method
Eksempel 8
Lad os se et eksempel for at afgøre, om de beskyttede metode er tilsidesat, sub-klasse med privat adgang modifier.,
Output:
Exception in thread "main" java.lang.Error: Unresolved compilation problem: Cannot reduce the visibility of the inherited method from A
Eksempel 9
Lad os se et eksempel for at afgøre, om de beskyttede metode er tilsidesat, sub-klasse ved hjælp af standard access modifier.
Output:
Exception in thread "main" java.lang.Error: Unresolved compilation problem: Cannot reduce the visibility of the inherited method from A
Eksempel 10
Lad os se et eksempel for at afgøre, om de beskyttede metode er tilsidesat, sub-klasse med offentlig adgang modifier.
Output:
Try to access the overridden method