Vad är skillnaden mellan klass och struktur

De huvudskillnad mellan klass och struktur är det Klassen är en datatyp av referenstyp medan strukturen är en datatyp av värdetyp.

Vid programmering är en variabel ett lagringsområde för att lagra data. Varje variabel har en specifik datatyp som den kan lagra. I huvudsak finns det två datatyper som värdetyp och referenstyp. I värdetyp tilldelas ett värde direkt. Dessutom är int, float och double några exempel på värdetypdatatyper. Å andra sidan lagrar inte datatyper av referenttyp den faktiska data. I stället lagras en referens till variabeln. Klass och struktur är två programmeringskoncept. Som nämnts ovan är klass en datatyp av referenstyp medan struktur är en datatyp av typen värde.

Viktiga områden som omfattas

1. Vad är klass
     - Definition, Funktionalitet
2. Vad är struktur
    - Definition, Funktionalitet
3. Vad är skillnaden mellan klass och struktur
     - Jämförelse av viktiga skillnader

Nyckelbegrepp

Klass, struktur

Vad är klass

Allt är ett objekt i Objektorienterad Programmering (OOP). Objekt skapas med en klass. En klass är en ritning för att skapa ett objekt. Dessutom består en klass av attribut och metoder. Egenskaper kallas även egenskaper, och de definierar egenskaperna för ett objekt. Metoderna definierar objektets beteende. Dessutom kallas instantiation att skapa ett objekt med hjälp av en klass.

Figur 1: UML-diagram av en klass

Medlemmar i en klass är attribut och metoder för en klass. Huvudvis är de tre åtkomstspecifika för att stödja data som gömmer sig i OOP: offentliga, privata och skyddade. För det första är de offentliga medlemmarna synliga för alla klasser. För det andra är de privata medlemmarna bara synliga inom samma klass. För det tredje är de skyddade medlemmarna synliga inom paketet och av underklassen.

Dessutom innehåller en klass en speciell funktion som kallas en konstruktör. Det hjälper till att skapa ett nytt objekt. Dessutom har det samma namn som klass och har ingen returtyp. Det kan vara en standardkonstruktor eller en parametrerad konstruktör.

En exempelklass är som följer.

Klassmedarbetare

offentliga int id;

offentligt strängnamn;

Huvudprogrammet är enligt följande.

Anställd e = Ny Anställd ();

e.id = 101;

e.name = "Ann";

Enligt ovanstående program har klassen två egenskaper: id och namn. De är offentliga och tillgängliga av någon annan klass. I huvudprogrammet skapar konstruktören ett anställdypobjekt. Därefter ges värdena till id och namn.

Vad är struktur

Struktur är en enda variabel som innehåller flera datatyper. Med andra ord är det en samling variabler av olika datatyper, alla referenser med ett namn. Strukturdeklarationen utgör en mall som hjälper till att skapa en instans av strukturen. Ett exempel är som följer.

struct anställd

offentliga int id;

offentligt strängnamn;

;

Huvudprogrammet är enligt följande.

Medarbetare e;

e.id = 101;

e.name = "Ann";

Enligt ovanstående program innehåller strukturen två egenskaper: id och namn. I huvudprogrammet förklarar "Employee e" -deklarationen "e" som en strukturtyp Anställd. Därefter ges värden till id och namn.

Skillnad mellan klass och struktur

Definition

En klass är en ritning som definierar variablerna och de metoder som är gemensamma för alla föremål av ett visst slag. Det är en referenstyp datatyp. Omvänt är en struktur en datatyp av typen värde som kan hålla relaterad data för olika datatyper. Därför ligger den största skillnaden mellan klass och struktur i datatypen.

Arv

En klass kan ärva från andra klasser eller strukturer, medan en struktur inte kan arva andra klasser eller strukturer.

destructor

Destructor är också en annan skillnad mellan klass och struktur. Klassen kan ha en destructor, men strukturen har ingen destructor.

instansiering

Vidare är en annan skillnad mellan klass och struktur att en klass instantiates ett objekt med ett nytt nyckelord medan en struktur instanserar ett objekt utan att använda ett nytt nyckelord.

Exempel

Dessutom är förekomsten av en klass ett objekt medan förekomsten av en struktur är en strukturvariabel. Därför är det en annan skillnad mellan klass och struktur. 

Nyckelord

Dessutom definierar sökordet "klass" en klass. Nyckelordet "struct" definierar en struktur.

Standard Access Specifier

Dessutom, i en klass, om det inte finns några åtkomstspecifikatorer deklarerade, är medlemmarna privata. I en struktur, om det inte anges några åtkomstspecifikatorer, är medlemmarna offentliga.

Slutsats

Vid programmering är det nödvändigt att lagra data. En variabel är en plats som används för att lagra data. Det finns två typer av variabler som värdetyp och referenstyp. Den grundläggande skillnaden mellan klass och struktur är att en klass är en referenstypdatatyp medan en struktur är en datatyp av värdetyp.

Referens:

1. "C # Klasser". Www.tutorialspoint.com, Tillgänglig här.
2. "C # Structures." Www.tutorialspoint.com, Tillgänglig här.

Image Courtesy:

1. "Oop-uml-class-example" Vid den ursprungliga uppladdaren var Esap på engelska Wikipedia. - Överförd från en.wikipedia till Commons (CC BY-SA 3.0) via Commons Wikimedia