Différence Entre La Variable D'instance Et La Variable Locale

Différence Entre La Variable D'instance Et La Variable Locale
Différence Entre La Variable D'instance Et La Variable Locale

Vidéo: Différence Entre La Variable D'instance Et La Variable Locale

Vidéo: Différence Entre La Variable D'instance Et La Variable Locale
Vidéo: Les variables : Locale et globale - Langage C 2024, Novembre
Anonim

Variable d'instance vs variable locale

Une variable d'instance est un type de variable présent dans la programmation orientée objet. Il s'agit d'une variable définie dans une classe et chaque objet de cette classe détient une copie distincte de cette variable. D'autre part, l'utilisation de variables locales ne se limite pas aux langages de programmation orientés objet. C'est une variable qui ne peut être évaluée que dans un bloc de code particulier (par exemple, fonction, bloc de boucle, etc.) dans lequel elle est définie. Pour cette raison, on dit que les variables locales ont une portée locale.

Qu'est-ce qu'une variable d'instance?

Les variables d'instance sont utilisées dans la programmation orientée objet pour stocker l'état de chaque objet dans une classe. Ils sont également appelés variables de membre ou variables de champ. Les variables d'instance sont déclarées sans utiliser le mot clé static en Java. Les valeurs stockées dans les variables d'instance sont uniques à chaque objet (chaque objet a une copie distincte) et les valeurs stockées dans celles-ci représentent l'état de cet objet. L'espace pour une variable d'instance est alloué dans le tas, lorsque cet objet est alloué dans le tas. Par conséquent, les variables d'instance sont conservées dans la mémoire tant que l'objet est actif. Par exemple, la couleur d'une voiture est indépendante de la couleur d'une autre voiture. Ainsi, la couleur d'un objet voiture peut être stockée dans une variable d'instance. En pratique, les variables d'instance sont déclarées à l'intérieur des classes et à l'extérieur des méthodes. Habituellement,les variables d'instance sont déclarées comme privées afin de ne pouvoir y accéder que dans la classe déclarée.

Qu'est-ce qu'une variable locale?

Les variables locales sont des variables ayant une portée locale, et elles sont déclarées dans un bloc de code spécifique. Les variables locales peuvent être considérées comme des variables utilisées par une méthode pour stocker son état temporaire. La portée d'une variable locale est déterminée à l'aide de l'emplacement où la variable est déclarée, et les mots clés spéciaux ne sont pas utilisés à cette fin. En règle générale, l'accès à une variable locale est limité dans le bloc de code qu'elle est déclarée (c'est-à-dire entre les accolades ouvrantes et fermantes de ce bloc de code). Les variables locales sont généralement stockées dans la pile d'appels. Cela permettrait aux appels de fonction récursifs de conserver leurs propres copies des variables locales à stocker dans des espaces d'adressage de mémoire séparés. Lorsque la méthode termine son exécution, des informations sur cette méthode sont extraites de la pile d'appels, détruisant également les variables locales qui ont été stockées.

Quelle est la différence entre une variable d'instance et une variable locale?

Les variables d'instance sont déclarées dans des classes en dehors des méthodes, et elles stockent l'état d'un objet, tandis que les variables locales sont déclarées dans des blocs de code, et elles sont utilisées pour stocker l'état d'une méthode. Une variable d'instance est active tant que l'objet qui contient cette variable est active, tandis qu'une variable locale est active pendant l'exécution de cette méthode / bloc de code. Une variable d'instance (qui est déclarée publique) est accessible dans la classe, alors qu'une variable locale n'est accessible que dans le bloc de code qu'elle est déclarée. L'utilisation des variables d'instance est uniquement limitée à la programmation orientée objet, tandis que les variables locales n'ont pas une telle limitation.

Recommandé: