Portée d'une variable en Java [avec exemple de codage]

Publié: 2021-02-05

Table des matières

introduction

Les programmeurs définissent la portée d'une variable en Java qui indique au compilateur la région à partir de laquelle une variable est accessible ou visible. La portée d'une variable en Java est statique par nature. Cela signifie que nous devons le déclarer uniquement au moment de la compilation. Dans cet article, vous découvrirez la portée d'une variable Java ainsi que ses types.

Quelle est la portée d'une variable en Java ?

Chaque variable utilisée dans un langage de programmation contient une portée. La portée indique au compilateur le segment dans un programme où la variable est accessible ou utilisée. Les programmeurs peuvent étendre les variables lexicalement ou statiquement dans le cas des variables Java.

La variable de portée statique signifie que les programmeurs doivent déterminer la portée d'une variable en Java au moment de la compilation plutôt qu'au moment de l'exécution. Notez également que chaque classe fait partie d'un package Java. Cela se résume à deux catégories différentes de portées d'une variable en Java .

1. Variables membres avec portée de classe : les variables membres sont membres d'une classe et sont donc déclarées à l'intérieur d'une classe, mais pas à l'intérieur d'une méthode ou d'une fonction. Ainsi, nous pouvons traiter une portée variable telle que la portée de classe ou la portée au niveau de la classe. Les programmeurs déclarent de telles variables dans les accolades de la classe ( {} ) avec un modificateur d'accès. Les programmeurs peuvent utiliser ces variables n'importe où dans la classe Java mais pas en dehors.

Exemple:

classe publique EgOfClassScope {

nombre entier privé amt = 10 ;

public void egMethod() {

somme += 10 ;

}

public void autreExampleMethod() {

Entier AmtIncr = amt + 6 ;

}

}

Nous pouvons voir que la variable 'amt' est accessible dans toutes les méthodes de la classe. Si nous utilisons le modificateur d'accès public au lieu de privé, la variable deviendra accessible de n'importe où dans le package.

Modificateur Package Sous-classe Monde

Publique Oui Oui Oui

protégé Oui Oui Non

Par défaut (non
modificateur) Oui Non Non

Privé Non Non Non

2. Portée locale ou portée de la méthode : les programmeurs peuvent déclarer des variables locales dans une portée locale ayant une plage moindre (supposons, dans la méthode). Les programmeurs ne peuvent pas accéder à ces variables depuis l'extérieur de la méthode Java, même dans la même classe. Ils ont des limites d'accessibilité et leur visibilité se termine lorsque la portée de la méthode Java se termine.

Exemple 1:

classe publique EgOfMethodScope {

public void PremièreMéthode() {

Salaire entier = 6000 ;

}

public void SecondMethod() {

// Cela rencontrera une erreur de compilation indiquant : la zone ne peut pas être résolue en une variable

salaire = salaire + 2000 ;

}

}

Il s'agit d'un exemple de portée de méthode. Ici, j'ai créé la variable 'salary' dans FirstMethod(){….}. Par conséquent, sa portée se termine à la fin de FirstMethod(). Ainsi, l'utilisation de cette variable dans SecondMethod() créera une erreur car la variable 'salary' est hors de portée.

Exemple 2 :

classe EgOfMethodScope2

{

int privé g ;

public void setG(int g)

{

this.g = g;

}

}

Ici, nous utilisons le mot clé 'this' pour faire la distinction entre la portée locale et la portée de la variable de classe. Les programmeurs utilisent ce mot-clé pour pointer vers l'objet courant en tant que variable de référence. Ici, le programmeur passe la variable en tant que paramètre à la méthode.

Notez que les variables locales n'existeront plus une fois l'exécution de la méthode terminée. Il existe d'autres formes de portée locale utilisées dans la méthode Java, mais à une partie spécifique à l'intérieur de celle-ci.

  • Portée de la boucle : il y a des situations où nous déclarons des variables à l'intérieur d'une boucle. Ces variables auront une portée de boucle et ne seront accessibles qu'à partir d'une boucle.

Exemple:

classe publique EgOfLoopScope {

List<String> listOfEmp = Arrays.asList ( "Karlos", "Gaurav", "Sue", "Dee");

public void itérerEmpName() {

Chaîne tout = "" ;

for (noms de chaîne : listOfEmp)

{ // La portée de la boucle commence à partir d'ici

tous = tous + ” ” + noms ;

} // la portée de la boucle se termine ici

// Vous rencontrerez une erreur de compilation indiquant : le nom ne peut pas être résolu en une variable - si vous essayez d'accéder à la variable à la ligne suivante

Chaîne lastEmpName = noms ;

}

}

Dans cette méthode iterateEmpName(), la variable 'names' a une portée de boucle (car il s'agit d'une variable de compteur) et est accessible dans les { et } de l'instruction 'for'.

  • Bracket Scope : les programmeurs peuvent définir une portée supplémentaire n'importe où dans le programme. Les programmeurs peuvent définir cette portée supplémentaire à l'aide des crochets { et }.

Exemple:

classe publique EgOfBracketScope {

public void EgAddOp() {

Entier tot = 0 ;

{ // La parenthèse commence à partir d'ici

Nombre entier = 6 ;

tot = tot + non ;

} // la portée des parenthèses se termine ici

// Cela créera une erreur de compilation indiquant : le nombre ne peut pas être résolu en tant que variable - s'il est utilisé dans la ligne suivante

non- ;

}

}

Points saillants sur la portée d'une variable en Java

  • Comme d'autres langages de programmation (C, C++ et C#), nous devons utiliser un ensemble d'accolades ( { et } ) pour définir la portée d'une variable en Java.
  • Nous pouvons accéder à une variable à partir de n'importe quelle méthode si nous la définissons dans une classe en dehors de toute portée de méthode.
  • Pour utiliser une variable après la fin d'une boucle, nous devons la déclarer avant ou juste au-dessus du corps de la boucle.
  • Mais nous ne pouvons pas l'implémenter ou y accéder sans un constructeur, une méthode Java et un bloc.
  • La portée d'une variable statique réside uniquement dans la classe.
  • La portée définit la région d'un programme à partir de laquelle les variables seront accessibles.

Apprenez des cours de développement de logiciels en ligne dans les meilleures universités du monde. Gagnez des programmes Executive PG, des programmes de certificat avancés ou des programmes de maîtrise pour accélérer votre carrière.

Conclusion

Cet article montre comment les programmeurs utilisent les étendues Java pour écrire différents programmes. Il nous renseigne également sur la zone d'un programme où la variable est visible. L'accessibilité et la visibilité jouent un rôle important dans la programmation en raison du concept de portée. Toute erreur dans la portée de la variable peut conduire un programmeur à une erreur de compilation.

Si vous souhaitez améliorer vos compétences en Java, vous devez mettre la main sur ces projets Java. Si vous souhaitez en savoir plus sur Java, le développement de la pile complète, consultez le programme exécutif PG de upGrad & IIIT-B en développement de logiciels à pile complète, conçu pour les professionnels en activité et offrant plus de 500 heures de formation rigoureuse, plus de 9 projets, et affectations, statut d'ancien de l'IIIT-B, projets de synthèse pratiques et aide à l'emploi avec les meilleures entreprises.

Qu'est-ce qu'une portée de variable en Java ?

La portée d'une variable est l'endroit de votre programme où elle peut être référencée. La portée de la variable est spécifiée à l'aide du mot-clé 'scope' dans la déclaration de la variable. Une variable accessible dans n'importe quelle portée peut être consultée absolument n'importe où dans votre programme. Une variable accessible uniquement dans une portée spécifique n'est accessible que dans cette portée. La portée peut être une fonction, un bloc, une méthode, une classe ou en dehors de toutes les méthodes, blocs et classes.

Quels sont les types de modificateurs d'accès en Java ?

Il existe quatre types de modificateurs d'accès en Java : public, protégé, par défaut (package) et privé. Public rend la variable, la classe ou la fonction accessible partout, protected la rend accessible à la classe dans laquelle elle est définie ainsi que ses sous-classes, default (package) la rend accessible à n'importe quelle classe du même package et private la rend accessible uniquement la classe dans laquelle il est défini.

Qu'est-ce qu'un mot-clé statique en Java ?

Un mot-clé statique dans une classe Java indique que la classe ainsi déclarée n'est pas une instance de la classe mais est une classe en soi. Les données membres statiques de la classe sont communes à toutes les instances. Un mot-clé statique est utilisé pour accéder aux méthodes et champs statiques d'une classe. En Java, le mot-clé static est utilisé pour accéder aux méthodes et champs statiques d'une classe. Pour accéder aux méthodes et champs statiques d'une classe, vous devez utiliser le nom de la classe, un point (.) et le nom de la méthode ou du champ statique.