Vous devez avoir vu des mots clés public, private et protected lors de la pratique de programmes java, ceux-ci sont appelés modificateurs d’accès. Un modificateur d’accès restreint l’accès d’une classe, un constructeur, un membre de données et la méthode d’une autre classe. En java, nous avons quatre modificateurs d’accès:
1. par défaut
2. privé
3. protégé
4. public
Default access modifier
Lorsque nous ne mentionnons aucun modificateur d’accès, il est appelé default access modifier., La portée de ce modificateur est limitée au paquet uniquement. Cela signifie que si nous avons une classe avec le modificateur d’accès par défaut dans un paquet, seules les classes qui se trouvent dans ce paquet peuvent accéder à cette classe. Aucune autre classe en dehors de ce paquet ne peut accéder à cette classe. De même, si nous avons une méthode par défaut ou un membre de données dans une classe, il ne serait pas visible dans la classe d’un autre paquet. Voyons un exemple pour comprendre ceci:
Exemple de modificateur d’accès par défaut en Java
Pour comprendre cet exemple, vous devez avoir la connaissance des paquets en java.,
dans cet exemple, nous avons deux classes, la classe Test essaie d’accéder à la méthode par défaut de la classe Addition, puisque la classe Test appartient à un paquet différent, ce programme lancerait une erreur de compilation, car la portée du modificateur par défaut est limitée au même paquet dans lequel il est déclaré.
Plus.java
le Test.java
Résultat:
Exception in thread "main" java.lang.Error: Unresolved compilation problem: The method addTwoNumbers(int, int) from the type Addition is not visibleat xyzpackage.Test.main(Test.java:12)
modificateur d’accès Privé
Le champ d’application de privé modificateur est limitée à la seule classe.,
- Les membres et méthodes de données privées ne sont accessibles que dans la classe
- et l’interface ne peut pas être déclarée comme privée
- Si une classe a un constructeur privé, vous ne pouvez pas créer l’objet de cette classe à partir de l’extérieur de la classe.
Voyons un exemple pour comprendre ceci:
Exemple de modificateur d’accès privé en java
Cet exemple génère une erreur de compilation car nous essayons d’accéder au membre de données privées et à la méthode de la classe ABC dans l’exemple de classe. Le membre et la méthode de données privées ne sont accessibles qu’au sein de la classe.,
Résultat:
Compile - time error
Protégées Modificateur d’Accès
Protégées membre de données et la méthode ne sont accessibles que par les classes du même package et les sous-classes présentes dans un paquet. Vous pouvez également dire que le modificateur d’accès protégé est similaire au modificateur d’accès par défaut à une exception près qu’il a une visibilité dans les sous-classes.
Les Classes ne peuvent pas être déclarées protégées. Ce modificateur d’accès est généralement utilisé dans une relation parent-enfant.,
exemple de modificateur D’accès protégé en Java
dans cet exemple, le test de classe présent dans un autre paquet peut appeler la méthodeaddTwoNumbers()
, qui est déclarée protégée. En effet, la classe Test étend l’Addition de classe et le modificateur protected permet l’accès des membres protégés dans les sous-classes (dans tous les packages).
Plus.java
package abcpackage;public class Addition { protected int addTwoNumbers(int a, int b){return a+b; }}
le Test.java
sortie:
33
modificateur D’accès Public
Les membres, méthodes et classes déclarés publics sont accessibles de n’importe où., Ce modificateur ne met aucune restriction sur l’accès.
exemple de modificateur d’accès public en java
prenons le même exemple que nous avons vu ci-dessus mais cette fois la méthode addTwoNumbers() a un modificateur public et class Test est capable d’accéder à cette méthode sans même étendre la classe Addition. En effet, le modificateur public a une visibilité partout.
Plus.java
package abcpackage;public class Addition { public int addTwoNumbers(int a, int b){return a+b; }}
le Test.,java
Résultat:
101
Permet de voir l’étendue de ces modificateurs d’accès sous forme de tableaux:
Laisser un commentaire