Rozdíl mezi třídou a strukturou v C #

Klíčový rozdíl - třída vs Struktura v C #
 

C # je moderní, univerzální a na vysoké úrovni programovací jazyk vyvinutý společností Microsoft. Je to programovací jazyk, který má podobnou podobnost jako Java. Obsahuje silné programovací funkce, jako jsou delegáti, indexátoři a Language Integrated Query. Hlavní výhodou C # je, že podporuje objektově orientované programování (OOP). OOP je užitečné modelovat program nebo komplexní software pomocí objektů. Objekty jsou vytvářeny pomocí tříd. Struktura je také koncept v C #. V programování je proměnná úložná oblast, ve které lze ukládat data. Každá proměnná má specifický datový typ k uložení. Dva typy dat jsou typ hodnoty a typ odkazu. V typu hodnoty lze hodnotu přiřadit přímo. Některé příklady jsou int, char, float. Datové typy referenčního typu neukládají skutečná data, ale obsahují odkaz na proměnnou. Třídy a struktury obsahují data. Tento článek popisuje rozdíl mezi třídou a strukturou v C #. klíčový rozdíl mezi třídou a strukturou v C # je, třída je typ dat typu odkazu, zatímco struktura je typ dat typu hodnoty.

OBSAH

1. Přehled a klíčový rozdíl
2. Co je třída v C #
3. Co je struktura v C #
4. Podobnosti mezi třídou a strukturou v C #
5. Porovnání vedle sebe - třída vs struktura v C # v tabulkové formě
6. Shrnutí

Co je třída v C #?

V OOP je vše považováno za objekt. V programu nebo softwaru existuje libovolný počet objektů. Tyto objekty neexistují izolovaně. Každý objekt interaguje s jinými objekty. K této komunikaci dochází pomocí akcí. Objekt se skládá z atributů a metod. Atributy definují vlastnosti objektu a metody definují akce nebo chování objektu. Objekty jsou vytvářeny pomocí třídy. Třída je podobná popisu nebo plánu pro vytvoření objektu. Třída má atributy a metodu, která by měla být obsažena v objektu. Vytvoření objektu pomocí třídy se nazývá instanci. Chcete-li vytvořit objekt typu Student, měla by existovat třída nazvaná Student. K definici třídy v C # se používá klíčové slovo 'class'.

Třída obsahuje konstruktor. Jedná se o speciální funkci, která se provádí při vytváření nového objektu třídy. Konstruktor má stejné jméno jako třída. Nemá návratový typ. Výchozí konstruktor nemá žádné parametry. Parametrizovaný konstruktor obsahuje parametry. Třída může také obsahovat destruktor. Je to speciální funkce, která se provádí, když předmět třídy přestane být mimo rozsah. Destruktor má stejné jméno jako název třídy a začíná na ~. Nevrací žádnou hodnotu a nevyžaduje parametry.

Třída Student obsahuje atributy a metody, které by měly existovat ve vytvořených objektech.

using System;

namespace Application1

student třídy

int studentID;

název řetězce;

public student (int sid, string sname)

studentID = sid;

name = sname;

~ Student ();

public void displayDetails ()

Řídicí panel. WriteLine („ID studenta je 0“, ID studenta);

Řídicí panel. WriteLine („Jméno studenta je 0“, jméno);

class StudentInfomation

static void Main (string [] args)

Student s = nový student (1, „Ann“);

s.displayDetails ();

Console.ReadLine ();

Podle výše uvedeného programu se jmenný prostor nazývá Aplikace 1. Jmenný prostor obsahuje související sadu tříd. Student třídy má dvě vlastnosti studentské ID a jméno. V hlavním programu je vytvořen Studentský objekt. Tento objekt je “. Při vytváření objektu konstruktor nastavuje hodnoty. Poté je vyvolána metoda displayDetails. To vytiskne ID a jméno studenta.

Třídy mohou také implementovat dědičnost. Dědičnost je funkce objektově orientovaného programování. Jedná se o použití atributů a metod již existující třídy. Třída proto může zdědit jinou třídu.

Co je struktura v C #?

Struktura je typ datového typu v C #. Je to jediná proměnná, která obsahuje více typů dat. Struktura může představovat určitý záznam. Struktura obsahuje atributy. Student má atributy jako id, jméno a věk. Struktura je definována pomocí klíčového slova „struct“. Program se strukturou je následující.

using System;

struct Student

public int id;

název veřejného řetězce;

;

veřejná třída Student ()

public static void main (string [] args)

Studenti;

s.id = 1;

s.name = „Ann“;

Console.WriteLine („ID studenta 0“, s.id);

Console.WriteLine („Jméno studenta 0“, s.name);

Console.ReadLine ();

Podle výše uvedeného programu struktura obsahuje dvě vlastnosti. Jsou to id a jméno. V hlavním programu deklarace studenta deklaruje typ studenta. Poté byly id a jméno dány hodnoty. Nakonec jsou vytištěny na obrazovce.

Není možné změnit výchozí konstruktor struktury, protože výchozí konstruktor je definován automaticky. Struktura neobsahuje destruktory. Na rozdíl od třídy, struktura nemůže zdědit jinou třídu nebo jinou strukturu.

Jaké jsou podobnosti mezi třídou a strukturou v C #?

  • Oba mají atributy a metody.
  • Třída i struktura mohou implementovat jedno nebo více rozhraní.

Jaký je rozdíl mezi třídou a strukturou v C #?

Třída vs Struktura v C #

Třída je plán, který se používá k vytvoření objektu. Struktura je datový typ typu hodnoty, který může obsahovat související data různých datových typů.
 Datový typ
Třída je typ dat referenčního typu. Struktura je datový typ typu hodnoty.
Dědictví
Třída může zdědit od jiných tříd nebo struktur. Struktura nemůže zdědit jiné třídy nebo struktury.
 Okamžitost
Třída vytvoří instanci objektu pomocí nového klíčového slova. Struktura vytvoří objekt bez použití nového klíčového slova.
Výchozí konstruktor
Může změnit výchozí konstruktor třídy. Nelze změnit výchozí konstruktor struktury. Výchozí konstruktor je definován automaticky.
Destruktor
Třída může mít destruktor. Struktura nemá destruktor.

Shrnutí - třída vs Struktura v C # 

C # je programovací jazyk vytvořený společností Microsoft. Při programování by měla být data uložena. Data jsou uložena v paměťových místech a jsou známa jako proměnná. Každá proměnná má specifický typ dat, která mají být uložena. Mohou existovat datové typy hodnotových typů a datové typy referenčních typů. Datové typy typu hodnoty ukládají skutečnou hodnotu. Datové typy typu odkazu ukládají odkaz na proměnnou. Třída a struktura mají různé typy dat. Rozdíl mezi třídou a strukturou v C # je, že třída je datovým typem referenčního typu, zatímco struktura je datovým typem typu hodnoty.

Stáhněte si PDF třídy vs Struktura v C #

Můžete si stáhnout PDF verzi tohoto článku a použít ji pro účely offline podle citace. Stáhněte si PDF verzi zde: Rozdíl mezi třídou a strukturou v C #

Odkaz:

1.tutorialspoint.com. "C # třídy." The Point, k dispozici zde 
2.tutorialspoint.com. "C # Struktury." The Point, k dispozici zde 

Obrázek se svolením:

1.'Logo C Sharp'By Microsoft, (Public Domain), prostřednictvím Commons Wikimedia