Variables locales
"Salutations, mon étudiant bien-aimé ! Il est temps d'être un peu plus sérieux au sujet 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, elle existe à partir du moment où elle est déclarée jusqu'à la fin du bloc de code dans lequel il est déclaré.
"De toute évidence, j'ai besoin d'un exemple."
"Pas de problème. Et voilà :
Code | Disponibilité variable |
---|---|
|
|
"Revoyons une fois de plus les règles d'accès aux variables locales. Voici un bloc de code. Qu'est-ce qui marque son début et sa fin ?"
"Accolades?"
"Correct. Cela peut être le corps d'une méthode, le corps d'une boucle ou simplement 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. Dites-moi, où une variable existe si elle est déclarée dans le corps d'une boucle ?"
"Il n'existera que dans le corps de la boucle."
"C'est vrai. De plus, il sera créé et détruit à chaque itération de la boucle."
"Cela signifie que vous ne pouvez pas déclarer deux variables locales avec le même nom dans une méthode - le programme ne compilera pas. Mais vous pouvez le faire si les blocs de code où les variables sont déclarées ne se chevauchent pas. "
"Il y a une raison pour laquelle tu es mon préféré, Amigo. Prends un autre exemple pour solidifier cela dans ton cerveau.
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.
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 ?"
"Hmm... je suis perplexe..."
"Tout est assez simple ici. 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 lorsque la méthode se termine."
"En d'autres termes, ils sont visibles dans tout le corps de la méthode et seulement là ?"
"Oui. Exemple :
Code | Visibilité variable |
---|---|
|
|
"Comme nous l'avons dit précédemment, args
n'est qu'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.
Variables dans une classe
"Rappelez-vous les leçons du niveau 1, où nous avons dit 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.
"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."
« Et pourquoi sont-ils là ?
"Pour commencer, elles 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."
"Je comprends tout ! 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."
"Bien joué, Amigo. Nous avons préparé le terrain et vous apprendrez des détails sur les objets d'une classe au niveau suivant.
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.
"Je n'ai pas encore une compréhension claire des variables statiques."
"Oh, je sais, mais ne vous inquiétez pas. Pour l'instant, familiarisez-vous avec eux. Familiarisez-vous avec eux. Au niveau 11, nous analyserons la structure des variables statiques et des méthodes et vous en comprendrez les raisons. 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, elles appartiennent à la classe elle-même. C'est pourquoi elles existent même si aucun objet de la classe n'a été créé . Vous pouvez vous référer à les d'autres classes en utilisant une construction comme:
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 à partir de n'importe quelle méthode d'un programme (et pas seulement à partir d'une méthode)."sum
"Je ne comprends pas tout à fait, mais cela me semble pratique."
"C'est vrai. Et parfois c'est nécessaire. Sans variables et méthodes statiques, nous serions bloqués."
"J'espère que je vais lentement être capable de le comprendre."
"Oui, bien sûr que tu le feras."
GO TO FULL VERSION