Die meisten modernen Programmiersprachen unterstützen die objektorientierte Programmierung. Ein Objekt enthält Daten oder Attribute. Ein Objekt hat bestimmte Verhalten. Sie sind als Methoden bekannt. Ein Programm kann mithilfe von Objekten modelliert werden. Eine Software ist eine Sammlung von Programmen. Daher kann eine Software unter Verwendung von Objekten entworfen und implementiert werden. Objekte werden mit Methoden interagiert. Objektorientierte Programmierung verbessert die Modularität und Wiederverwendbarkeit von Code. Es sollte eine Klasse zum Erstellen von Objekten geben. Eine Klasse ist ein Bauplan, um ein Objekt zu erstellen. Ein Objekt ist daher eine Instanz einer Klasse. Bei der Programmierung mussten die Daten gespeichert werden. Daten werden an Speicherplätzen gespeichert. Diese Speicherplätze werden als Variablen bezeichnet. Eine Membervariable ist eine Variable, die einem bestimmten Objekt zugeordnet ist. Es ist für alle seine Methoden zugänglich. Es gibt zwei Arten von Elementvariablen, die Klassenvariablen und Instanzvariablen sind. Das Hauptunterschied zwischen Klassen- und Instanzvariablen ist das, Wenn es nur eine Kopie der Variablen gibt, die von allen Klasseninstanzen gemeinsam genutzt wird, werden diese Variablen als Klassenvariablen bezeichnet. Wenn jede Instanz der Klasse über eine eigene Kopie der Variablen verfügt, werden diese Variablen als Instanzvariablen bezeichnet.
1. Übersicht und Schlüsseldifferenz
2. Was sind Klassenvariablen?
3. Was sind Instanzvariablen?
4. Ähnlichkeiten zwischen Klassen- und Instanzvariablen
5. Side-by-Side-Vergleich - Klassen- und Instanzvariablen in Tabellenform
6. Zusammenfassung
Wenn es nur eine Kopie der Variablen gibt, die von allen Klasseninstanzen gemeinsam genutzt wird, werden diese Variablen als Klassenvariablen aufgerufen. Klassenvariablen sind innerhalb der Klasse außerhalb einer Methode deklarierte Variablen. Diese Variablen enthalten das Schlüsselwort static. Diese Variablen sind der Klasse und nicht dem Objekt zugeordnet.
Abbildung 01: Klassenvariablen und Instanzvariablen
Siehe den folgenden Code mit Klassenvariablen.
öffentliche Klasse Angestellter
public static int id;
öffentliches statisches Doppelgehalt;
öffentliche Klasse Test
public static void main (Zeichenfolge [] Argumente)
Mitarbeiter e1 = neuer Mitarbeiter ();
Mitarbeiter e2 = neuer Mitarbeiter ();
Gemäß dem obigen Programm sind e1 und e2 Objekte vom Typ Mitarbeiter. Beide haben die gleiche Kopie des Speichers. Wenn e1.id = 1 ist und e2.id gedruckt wird, wird auch der Wert 1 ausgegeben. Es ist möglich, die ID - und Gehaltswerte unter Verwendung des Klassennamens Employee wie Employee.id, Employee.salary etc.
Wenn jede Instanz der Klasse über eine eigene Kopie der Variablen verfügt, werden diese Variablen als Instanzvariablen bezeichnet. Siehe das untenstehende Programm.
öffentliche Klasse Angestellter
public int id;
öffentliches Doppelgehalt;
öffentliche Klasse Test
public static void main (Zeichenfolge [] Argumente)
Mitarbeiter e1 = neuer Mitarbeiter ();
e1.id = 1;
e1.salary = 20000;
Mitarbeiter e2 = neuer Mitarbeiter ();
e2.id = 2;
e2. Gehalt = 25000;
Im Hauptprogramm beziehen sich e1 und e2 auf die Objekte des Typs Employee. Mit dem Punktoperator können Werte für die ID und das Gehalt zugewiesen werden, z. B. e1.id, e1. Gehalt usw. Die ID und das Gehalt in der Klasse Employee werden als Instanzvariablen bezeichnet. E1 und e2 sind getrennte Objekte. Jedes Objekt verfügt über eine separate Kopie von Instanzvariablen. Der e1 wird eine separate ID und ein getrenntes Gehalt haben, und e2 wird eine separate ID und ein getrenntes Gehalt haben. Die Instanzvariablen werden also erstellt, wenn das Objekt oder die Instanz erstellt wird.
Klassenvariablen vs. Instanzvariablen | |
Klassenvariablen sind Variablen, bei denen es nur eine Kopie der Variablen gibt, die mit der gesamten Instanz der Klasse gemeinsam genutzt wird. | Instanzvariablen sind Variablen, wenn jede Instanz der Klasse über eine eigene Kopie der Variablen verfügt. |
Verband | |
Klassenvariablen sind der Klasse zugeordnet. | Instanzvariablen sind Objekten zugeordnet. |
Anzahl der Kopien | |
Klassenvariablen erstellen eine Kopie für alle Objekte. | Instanzvariablen erstellen für jedes Objekt eine separate Kopie. |
Schlüsselwörter | |
Klassenvariablen sollten das statische Schlüsselwort haben. | Instanzvariablen erfordern kein spezielles Schlüsselwort wie "static". |
Objektorientierte Programmierung ist ein wichtiges Programmierparadigma. Es hilft, eine Software mithilfe von Objekten zu modellieren. Objekte werden mit Klassen erstellt. Die Objekterstellung wird auch als Instantiierung bezeichnet. Eine Klasse stellt einen Bauplan zum Erstellen eines Objekts bereit. Eine Membervariable ist eine Variable, die einem bestimmten Objekt zugeordnet ist. Es ist für alle seine Methoden zugänglich. Es gibt zwei Arten von Elementvariablen wie Klassenvariablen und Instanzvariablen. Der Unterschied zwischen Klassen- und Instanzvariablen besteht darin, dass, wenn es nur eine Kopie der Variablen gibt, die mit allen Instanzen der Klasse gemeinsam genutzt wird, diese Variablen als Klassenvariablen bezeichnet werden und wenn jede Instanz der Klasse ihre eigene Kopie der Variablen hat, diese Variablen werden Instanzvariablen genannt.
Sie können die PDF-Version dieses Artikels herunterladen und gemäß Zitatvermerk für Offline-Zwecke verwenden. Laden Sie die PDF-Version hier herunter: Unterschied zwischen Klassen- und Instanzvariablen
1.Tutorialspoint.com. "Java-Objekt und Klassen." Die Stelle. Hier verfügbar
2. „Instanzvariable“. Wikipedia, Wikimedia Foundation, 16. Dezember 2017. Hier verfügbar
3. „Klassenvariable“. Wikipedia, Wikimedia Foundation, 16. Dezember 2017. Hier verfügbar