1. Variables locales
Parlons plus sérieusement des variables. Mais cette fois, nous ne discuterons pas de leur structure interne. Au lieu de cela, nous nous concentrerons sur la façon dont les variables interagissent avec le code où elles se trouvent.
Toutes les variables déclarées à l'intérieur des méthodes sont appelées variables locales . Une variable locale n'existe que dans le bloc de code dans lequel elle est déclarée. Ou, pour être plus précis, il existe depuis le moment où il est déclaré jusqu'à la fin du bloc de code dans lequel il est déclaré.
Pour simplifier, prenons un exemple :
Code | Visibilité variable |
---|---|
|
|
Parlons encore une fois de l'accès aux variables locales. Voici un bloc de code composé d'accolades : il peut s'agir du corps d'une méthode, du corps d'une boucle ou simplement d'un bloc de code pour une instruction conditionnelle. Une variable déclarée dans un bloc de code existe jusqu'à la fin de ce bloc de code.
Si une variable est déclarée dans le corps de la boucle, alors elle n'existera que dans le corps de la boucle. Il est créé et détruit à chaque itération de la boucle.
Exemple:
Code | Visibilité variable |
---|---|
|
|
Nous avons pu déclarer une deuxième variable locale nommée b
uniquement parce que la première b
variable n'est pas visible dans le bloc de code où la deuxième b
variable est déclarée.
2. Paramètres
Comme nous l'avons dit précédemment, chaque méthode peut avoir des variables que nous appelons des paramètres. Qu'en est-il de leur visibilité et de leur durée de vie ?
Tout est simple. Les paramètres sont créés lorsque l'exécution entre dans la méthode (c'est-à-dire lorsque le code de la méthode commence à s'exécuter). Ils sont éliminés à la fin de la méthode. Ils sont visibles dans tout le corps de la méthode.
Exemple:
Code | Visibilité variable |
---|---|
|
|
Comme nous l'avons dit précédemment, args
est juste une variable dont le type est un tableau de chaînes. Et comme tous les paramètres, il est disponible partout dans le corps de la méthode. Cela dit, nous l'ignorons généralement dans nos exemples.
3. Variables dans une classe
Vous vous souviendrez des leçons du niveau 1 qu'une classe peut avoir des méthodes et des variables. Les méthodes sont parfois appelées méthodes d'instance, et les variables — variables d'instance ou champs. Ce sont en fait des synonymes en Java.
Quelles sont les variables (ou champs) d'une classe ?
Ce sont des variables qui ne sont pas déclarées dans une méthode, mais dans une classe.
Ils sont accessibles depuis n'importe quelle méthode (non statique) d'une classe. En gros, les variables d'instance sont des variables partagées par toutes les méthodes d'une classe.
Exemple:
Code | Visibilité variable |
---|---|
|
|
Dans cet exemple, nous avons deux méthodes — add()
et remove()
. La add()
méthode incrémente les variables d'instance sum
et count
et la remove()
méthode diminue les variables sum
et count
. Les deux méthodes fonctionnent sur des variables d'instance partagées.
Les variables locales existent pendant l'exécution d'une méthode. Les variables d'instance d'une classe existent dans un objet d'une classe tant que cet objet existe. Vous apprendrez des détails sur les objets d'une classe au niveau suivant.
4. Variables statiques
Comme les méthodes, les variables d'une classe peuvent être statiques ou non statiques. Les méthodes statiques ne peuvent accéder qu'aux variables statiques.
Au niveau 11, nous analyserons la structure des variables statiques et des méthodes et vous comprendrez les raisons de ces restrictions.
Pour faire une variable statique (variable de classe), vous devez écrire le static
mot clé dans sa déclaration.
Les variables statiques ne sont pas liées à un objet ou à une instance de la classe dans laquelle elles sont déclarées. Au lieu de cela, ils appartiennent à la classe elle-même. C'est pourquoi ils existent même si aucun objet de la classe n'a été créé . Vous pouvez vous y référer à partir d'autres classes en utilisant une construction telle que :
ClassName.variableName
Exemple:
Code | Visibilité variable |
---|---|
|
|
Dans l'exemple ci-dessus, nous avons créé une Storage
classe distincte, y avons déplacé les variables count
et et les avons déclarées static . Les variables statiques publiques sont accessibles depuis n'importe quelle méthode d'un programme (et pas seulement depuis une méthode).sum
GO TO FULL VERSION