Vidéo: Constructeurs par défaut en Java 2024
Au fur et à mesure que vos applications Java deviennent plus complexes, le besoin de considérer la portée devient de plus en plus important. La principale raison est que vous pouvez introduire un bogue dans votre application par inadvertance en n'observant pas les règles de portée.
Cela peut résulter d'un champ ou d'un autre membre mal utilisé par l'application (par exemple ajouter une valeur de données incorrecte ou accéder à une méthode). le mauvais moment ou avec des données incorrectes.) De plus, une portée incorrecte peut laisser la porte ouverte à des tiers pour interagir avec votre application de manière imprévisible (comme un virus).
La portée par défaut se produit lorsque vous n'attribuez pas spécifiquement une portée à un élément de classe.Comme plusieurs développeurs Java n'ont aucune idée de la portée par défaut de certains éléments (et utilisent une portée par défaut signifie que votre code n'est pas documenté), n'est pas très souvent utilisé.
Même ainsi, vous devez t o savoir quelle est la portée par défaut pour les différents éléments car certains développeurs Java en dépendent. Cependant, avant de pouvoir comprendre la portée par défaut, vous devez considérer visibilité - la mesure des éléments de l'application qui peuvent voir un membre. Java fournit les niveaux de visibilité suivants (dans l'ordre général de l'encapsulation):
-
Package: Le conteneur utilisé pour contenir un certain nombre de classes. Lorsque vous travaillez avec une structure de répertoire simple, comme le font les exemples dans ce livre, le paquet est un répertoire qui contient un certain nombre de. fichiers de classe.
-
Classe: Une classe réside habituellement dans un seul. fichier java que vous compilez en un. fichier de classe. Il contient une déclaration de classe unique.
-
Méthode: Un élément peut résider dans la classe ou dans le cadre d'une méthode. La méthode agit comme un conteneur pour contenir l'élément.
-
Bloc: Un élément peut résider dans un bloc de code, tel qu'une boucle for.
La portée dépend partiellement de l'emplacement utilisé pour déclarer un élément. Par exemple, une variable définie dans un bloc (telle qu'une boucle for) n'est visible que dans ce bloc. Lorsque vous essayez d'utiliser la variable en dehors du bloc, Java affiche une exception. En prenant en compte la visibilité, ce tableau décrit les différents niveaux de portée dans l'environnement Java.
Visibilité | privée | (par défaut) | protégée | publique |
---|---|---|---|---|
Accessible depuis la classe | X | X | X | X |
Accessible à partir du package | X | X | X | |
Accessible depuis n'importe quelle classe enfant | X | X | ||
Accessible partout | X |
La table montre comment la portée par défaut s'intègre dans le schéma des choses. Par exemple, si vous déclarez une méthode en utilisant la portée par défaut, n'importe quelle méthode peut l'utiliser tant qu'elle réside dans le même package.En outre, si vous créez une classe qui hérite de la classe contenant la méthode, la sous-classe peut utiliser la méthode tant qu'elle réside dans le même package.
Toutefois, si la sous-classe existe en dehors du package actuel, elle ne peut pas utiliser la méthode. En résumé, la portée par défaut est un peu plus restrictive que la portée protégée, mais moins restrictive que la portée privée.