Les modificateurs d'accès en Java sont utilisés pour limiter la portée d'accès aux classes, interfaces, champs et méthodes. Ils représentent respectivement différents niveaux de contrôle d'accès. Il existe quatre modificateurs d'accès en Java : public, protégé, par défaut et privé.
public est le modificateur d'accès le plus ouvert et est utilisé pour spécifier un niveau d'accès public. Les classes, interfaces, champs et méthodes modifiés par public sont accessibles de n'importe où.
Par exemple, le code suivant définit une classe publique :
public class MyClass { // ... }
Cette classe est accessible de n'importe où. De plus, si une méthode ou un champ est déclaré public, il est accessible de n'importe où. Par exemple :
public class MyClass { public String name; public void sayHello() { System.out.println("Hello, world!"); } }
protected est utilisé pour spécifier le niveau d'accès protégé. Les classes, champs et méthodes modifiés avec protected sont accessibles par les autres classes de ce package, ainsi que par les sous-classes.
Par exemple, le code suivant définit une classe protégée :
package mypackage; protected class MyProtectedClass { // ... }
Cette classe n'est accessible que par les autres classes du package mypackage et par les sous-classes qui héritent de MyProtectedClass. De plus, si une méthode ou un champ est déclaré protégé, il est également accessible aux autres classes du même package, ainsi qu'aux sous-classes qui héritent de cette classe. Par exemple :
package mypackage; public class MyClass { protected String name; protected void sayHello() { System.out.println("Hello, world!"); } }
Les méthodes name et sayHello de cette classe sont accessibles par d'autres classes du package mypackage, ainsi que par les sous-classes qui héritent de MyClass.
default est le modificateur d'accès par défaut en Java, il est également appelé contrôle d'accès privé au niveau du package. Si une classe, une interface, un champ ou une méthode n'utilise aucun modificateur d'accès, il s'agit alors du niveau d'accès par défaut. Le niveau d'accès par défaut signifie que l'accès n'est disponible que dans le même package.
Par exemple, le code suivant définit une classe avec un niveau d'accès par défaut :
package mypackage; class MyDefaultClass { // ... }
Cette classe n'est accessible qu'aux autres classes du package mypackage. De plus, si une méthode ou un champ n’utilise aucun modificateur d’accès, il s’agit également du niveau d’accès par défaut. Par exemple :
package mypackage; public class MyClass { String name; void sayHello() { System.out.println("Hello, world!"); } }
Les méthodes name et sayHello de cette classe ne sont accessibles que par les autres classes du package mypackage.
private est le modificateur d'accès le plus restrictif, utilisé pour spécifier un niveau d'accès privé. Les champs et méthodes modifiés par private ne sont accessibles qu'au sein de la classe dans laquelle ils sont définis.
Par exemple, le code suivant définit une classe privée :
public class MyClass { private String name; private void sayHello() { System.out.println("Hello, world!"); } }
Les méthodes name et sayHello de cette classe ne sont accessibles qu'à l'intérieur de la classe MyClass.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!