Unterschied zwischen Klasse und Struktur in C #

Schlüsseldifferenz - Klasse vs Struktur in C #
 

C # ist eine moderne, universelle Programmiersprache, die von Microsoft entwickelt wurde. Es ist eine Programmiersprache, die Java sehr ähnlich ist. Es enthält starke Programmierfunktionen wie Delegaten, Indexer und Language Integrated Query. Der Hauptvorteil von C # ist, dass es Object Oriented Programming (OOP) unterstützt. OOP ist nützlich, um ein Programm oder eine komplexe Software mithilfe von Objekten zu modellieren. Objekte werden mit Klassen erstellt. Die Struktur ist auch ein Konzept in C #. Beim Programmieren ist eine Variable ein Speicherbereich, in dem Daten gespeichert werden können. Jede Variable hat einen bestimmten Datentyp zum Speichern. Zwei Datentypen sind ein Werttyp und ein Referenztyp. Im Werttyp kann ein Wert direkt zugewiesen werden. Einige Beispiele sind int, char, float. Datentypen des Referenztyps speichern nicht die tatsächlichen Daten, sondern sie enthalten einen Verweis auf die Variable. Klassen und Strukturen enthalten Daten. Dieser Artikel beschreibt den Unterschied zwischen Klasse und Struktur in C #. Das Hauptunterschied zwischen Klasse und Struktur in C # ist, Eine Klasse ist ein Referenztypdatentyp, während eine Struktur ein Werttypdatentyp ist.

INHALT

1. Übersicht und Schlüsseldifferenz
2. Was ist Klasse in C #
3. Was ist Struktur in C #
4. Ähnlichkeiten zwischen Klasse und Struktur in C #
5. Side-by-Side-Vergleich - Klasse vs. Struktur in C # in Tabellenform
6. Zusammenfassung

Was ist Klasse in C #?

In OOP wird alles als Objekt betrachtet. In einem Programm oder einer Software gibt es eine beliebige Anzahl von Objekten. Diese Objekte sind nicht isoliert vorhanden. Jedes Objekt interagiert mit anderen Objekten. Diese Kommunikation erfolgt über Aktionen. Ein Objekt besteht aus Attributen und Methoden. Attribute definieren die Eigenschaften des Objekts und Methoden definieren die Aktionen oder das Verhalten des Objekts. Objekte werden mit einer Klasse erstellt. Eine Klasse ähnelt einer Beschreibung oder einem Plan zum Erstellen eines Objekts. Die Klasse verfügt über Attribute und Methoden, die im Objekt enthalten sein sollten. Das Erstellen eines Objekts mithilfe einer Klasse wird als Instantiierung bezeichnet. Um ein Objekt vom Typ Student zu erstellen, sollte es eine Klasse namens Student geben. Um eine Klasse in C # zu definieren, wird das Schlüsselwort "class" verwendet.

Eine Klasse enthält einen Konstruktor. Es ist eine spezielle Funktion, die ausgeführt wird, wenn ein neues Objekt der Klasse erstellt wird. Ein Konstruktor hat denselben Namen wie die Klasse. Es gibt keinen Rückgabetyp. Der Standardkonstruktor hat keine Parameter. Der parametrisierte Konstruktor enthält Parameter. Eine Klasse kann auch einen Destruktor enthalten. Es ist eine spezielle Funktion, die ausgeführt wird, wenn ein Objekt der Klasse den Gültigkeitsbereich verlässt. Destruktor hat denselben Namen wie der Klassenname und beginnt mit ~. Es gibt keinen Wert zurück und erfordert keine Parameter.

Die Klasse Student enthält Attribute und Methoden, die in den erstellten Objekten vorhanden sein sollten.

mit System;

Namensraum Application1

Klassenschüler

int studentID;

String-Name;

öffentlicher Student (int sid, string sname)

studentID = sid;

name = sname;

~ Student ();

public void displayDetails ()

Konsole. WriteLine ("Student ID ist 0", StudentID);

Konsole. WriteLine („Name des Schülers ist 0“, Name);

Klasse StudentInfomation

static void Main (string [] args)

Student s = neuer Student (1, "Ann");

s.DisplayDetails ();

Console.ReadLine ();

Gemäß dem obigen Programm wird der Namespace als Anwendung 1 bezeichnet. Der Namespace enthält eine verwandte Gruppe von Klassen. Class Student hat zwei Eigenschaften, Student ID und Name. Im Hauptprogramm wird das Studentenobjekt erstellt. Dieses Objekt ist '. Beim Erstellen des Objekts legt der Konstruktor die Werte fest. Dann wird die displayDetails-Methode aufgerufen. Dadurch werden die Schüler-ID und der Name gedruckt.

Die Klassen können auch Vererbung implementieren. Vererbung ist eine Funktion in der objektorientierten Programmierung. Es sind die Attribute und Methoden einer bereits vorhandenen Klasse zu verwenden. Daher kann eine Klasse eine andere Klasse erben.

Was ist Struktur in C #?

Die Struktur ist ein Werttypdatentyp in C #. Es ist eine einzelne Variable, die mehrere Datentypen enthält. Eine Struktur kann einen bestimmten Datensatz darstellen. Eine Struktur enthält Attribute. Ein Student hat Attribute wie ID, Name und Alter. Eine Struktur wird mit dem Schlüsselwort 'struct' definiert. Ein Programm mit Struktur sieht wie folgt aus.

mit System;

struct Student

public int id;

öffentlicher String-Name;

;

öffentliche Klasse Student ()

public static void main (Zeichenfolge [] Argumente)

Studenten;

s.id = 1;

s.name = "Ann";

Console.WriteLine ("Schüler-ID 0", s.id);

Console.WriteLine ("Student name 0", s.name);

Console.ReadLine ();

Gemäß dem obigen Programm enthält die Struktur zwei Eigenschaften. Sie sind ID und Name. Im Hauptprogramm werden in der Student-Anweisung s vom Typ Student angegeben. Dann wurden die ID und der Name mit Werten versehen. Schließlich werden diese auf dem Bildschirm gedruckt.

Es ist nicht möglich, den Standardkonstruktor einer Struktur zu ändern, da der Standardkonstruktor automatisch definiert wird. Die Struktur enthält keine Destruktoren. Im Gegensatz zur Klasse kann eine Struktur keine andere Klasse oder Struktur erben.

Was sind die Ähnlichkeiten zwischen Klasse und Struktur in C #?

  • Beide haben Attribute und Methoden.
  • Sowohl Class als auch Structure können eine oder mehrere Schnittstellen implementieren.

Was ist der Unterschied zwischen Klasse und Struktur in C #?

Klasse gegen Struktur in C #

Eine Klasse ist ein Bauplan, der zum Erstellen eines Objekts verwendet wird. Eine Struktur ist ein Datentyp vom Werttyp, der verwandte Daten verschiedener Datentypen enthalten kann.
 Datentyp
Eine Klasse ist ein Referenztyp-Datentyp. Eine Struktur ist ein Datentyp vom Werttyp.
Erbe
Eine Klasse kann von anderen Klassen oder Strukturen erben. Eine Struktur kann keine anderen Klassen oder Strukturen erben.
 Instantiation
Eine Klasse instanziiert ein Objekt mit dem neuen Schlüsselwort. Eine Struktur instantiiert ein Objekt, ohne das neue Schlüsselwort zu verwenden.
Standardkonstruktor
Kann den Standardkonstruktor einer Klasse ändern. Der Standardkonstruktor einer Struktur kann nicht geändert werden. Der Standardkonstruktor wird automatisch definiert.
Zerstörer
Klasse kann einen Destruktor haben. Struktur hat keinen Destruktor.

Zusammenfassung - Klasse vs Struktur in C # 

C # ist eine von Microsoft erstellte Programmiersprache. Bei der Programmierung sollten die Daten gespeichert werden. Daten werden an Speicherplätzen gespeichert und sie werden als Variable bezeichnet. Jede Variable hat einen bestimmten Datentyp, der gespeichert werden soll. Es können Werttypdatentypen und Referenztypdatentypen vorhanden sein. Werttypdatentypen speichern den tatsächlichen Wert. Die Datentypen des Referenztyps speichern eine Referenz auf die Variable. Klasse und Struktur haben unterschiedliche Datentypen. Der Unterschied zwischen Klasse und Struktur in C # besteht darin, dass die Klasse ein Referenzdatentyp ist, während eine Struktur ein Werttypdatentyp ist.

Laden Sie das PDF von Class vs Structure in C # herunter

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 Klasse und Struktur in C #

Referenz:

1.Tutorialspoint.com. "C # -Klassen." Die Stelle, Hier verfügbar 
2. tutorialspoint.com. "C # -Strukturen." Die Stelle, Hier verfügbar 

Bildhöflichkeit:

1.'Logo C Sharp'By Microsoft, (Public Domain) über Commons Wikimedia