Différence entre les variables de classe et d'instance

Différence clé - Classe vs variables d'instance
 

La plupart des langages de programmation modernes prennent en charge la programmation orientée objet. Un objet contient des données ou des attributs. Un objet a certains comportements. Ils sont connus comme méthodes. Un programme peut être modélisé à l'aide d'objets. Un logiciel est un ensemble de programmes. Par conséquent, un logiciel peut être conçu et mis en œuvre à l'aide d'objets. Les objets sont en interaction à l'aide de méthodes. La programmation orientée objet améliore la modularité et la réutilisabilité du code. Il devrait y avoir une classe pour créer des objets. Une classe est un plan pour créer un objet. Par conséquent, un objet est une instance d'une classe. En programmation, les données devaient être stockées. Les données sont stockées dans des emplacements de mémoire. Ces emplacements de mémoire sont appelés variables. Une variable membre est une variable associée à un objet spécifique. Il est accessible pour toutes ses méthodes. Il existe deux types de variables membres qui sont des variables de classe et des variables d'instance. le différence clé entre les variables de classe et d'instance est que, s'il n'y a qu'une seule copie de la variable partagée avec toutes les instances de la classe, ces variables sont appelées variables de classe et si chaque instance de la classe possède sa propre copie de la variable, ces variables sont appelées variables d'instance..

CONTENU

1. Vue d'ensemble et différence clé
2. Que sont les variables de classe?
3. Que sont les variables d'instance
4. Similarités entre les variables de classe et d'instance
5. Comparaison côte à côte - Variables classe et instance sous forme tabulaire
6. Résumé

Que sont les variables de classe??

Lorsqu'il existe une seule copie de la variable partagée avec toutes les instances de la classe, ces variables sont appelées variables de classe. Les variables de classe sont des variables déclarées dans la classe en dehors de toute méthode. Ces variables contiennent le mot clé static.Ces variables sont associées à la classe et non à l'objet..

Figure 01: Variables de classe et variables d'instance

Référez-vous au morceau de code ci-dessous avec les variables de classe.

Classe publique Employee

public static int id;

double salaire statique public;

Classe publique Test

public static void main (string [] args)

Employé e1 = nouvel employé ();

Employé e2 = nouvel employé ();

Selon le programme ci-dessus, e1 et e2 sont des objets de type Employé. Les deux auront la même copie de mémoire. Si e1.id = 1 et l'impression e2.id donnera également la valeur 1. Il est possible d'imprimer l'ID et les valeurs de salaire à l'aide du nom de la classe Employee tel que Employee.id, Employee.salary, etc..

Que sont les variables d'instance?

Lorsque chaque instance de la classe a sa propre copie de la variable, ces variables sont appelées variables d'instance. Voir le programme ci-dessous.

Classe publique Employee

public int id;

double salaire public;

Classe publique Test

public static void main (string [] args)

Employé e1 = nouvel employé ();

e1.id = 1;

e1.salary = 20000;

Employé e2 = nouvel employé ();

e2.id = 2;

e2. salaire = 25000;

Dans le programme principal, e1 et e2 sont des références aux objets de type Employee. Il est possible d’attribuer des valeurs à id et salaire en utilisant un opérateur de point tel que e1.id, e1. salaire etc. L'id et le salaire dans la classe Employee sont appelés variables d'instance. Les e1 et e2 sont des objets séparés. Chaque objet aura une copie distincte des variables d'instance. Le e1 aura un identifiant et un salaire distincts et e2 aura un identifiant et un salaire distincts. Ainsi, les variables d'instance sont créées lors de la création de l'objet ou de l'instance..

Quelles sont les similitudes entre les variables de classe et d'instance?

  • Les deux sont des types de variables.
  • Les deux variables sont à l'intérieur d'une classe mais en dehors de toute méthode.

Quelle est la différence entre les variables de classe et d'instance?

Variables de classe et variables d'instance

Les variables de classe sont des variables dans lesquelles il n'y a qu'une seule copie de la variable partagée avec toute l'instance de la classe.. Les variables d'instance sont des variables lorsque chaque instance de la classe possède sa propre copie de la variable.
 Association
Les variables de classe sont associées à la classe. Les variables d'instance sont associées à des objets.
Nombre de copies
Les variables de classe créent une copie pour tous les objets. Les variables d'instance créent une copie séparée pour chaque objet.
 Mots clés
Les variables de classe doivent avoir le mot-clé static. Les variables d'instance ne nécessitent pas de mot-clé spécial, tel que statique.

Résumé - Classe vs variables d'instance

La programmation orientée objet est un paradigme majeur de la programmation. Cela aide à modéliser un logiciel en utilisant des objets. Les objets sont créés à l'aide de classes. La création d'objet est également appelée instanciation. Une classe fournit un plan pour créer un objet. Une variable membre est une variable associée à un objet spécifique. Il est accessible pour toutes ses méthodes. Il existe deux types de variables membres en tant que variables de classe et variables d'instance. La différence entre les variables de classe et les variables d’instance est que, s’il n’existe qu’une seule copie de la variable partagée avec toutes les instances de la classe, ces variables sont appelées variables de classe et si chaque instance de la classe a sa propre copie de la variable, les variables sont appelées variables d'instance.

Télécharger la version PDF des variables classe vs instance

Vous pouvez télécharger la version PDF de cet article et l'utiliser à des fins hors ligne, conformément à la note de citation. Veuillez télécharger la version PDF ici: Différence entre les variables de classe et d’instance

Référence:

1.tutorialspoint.com. “Objet et classes Java.”  Le point. Disponible ici
2. «Variable d'instance». Wikipedia, Wikimedia Foundation, 16 décembre 2017. Disponible ici   
3. «Variable de classe». Wikipedia, Wikimedia Foundation, 16 décembre 2017. Disponible ici