Razlika između klase i strukture u C #

Ključna razlika - klasa vs struktura u C #
 

C # moderni je programski jezik opće namjene i visoke razine koji je razvio Microsoft. To je programski jezik koji ima sličnost s Javom. Sadrži snažne programske značajke kao što su delegati, indektori i upit s integriranim jezikom. Glavna prednost C # je što podržava objektno orijentirano programiranje (OOP). OOP je koristan za modeliranje programa ili složenog softvera pomoću objekata. Objekti se stvaraju pomoću klasa. Struktura je također pojam u C #. U programiranju, varijabla je prostor za pohranu koji može pohraniti podatke. Svaka varijabla ima određenu vrstu podataka za pohranjivanje. Dvije vrste podataka su vrsta vrijednosti i referentna vrsta. U vrsti vrijednosti vrijednost se može dodijeliti izravno. Neki primjeri su int, char, float. Tipovi podataka referentne vrste ne pohranjuju stvarne podatke, ali sadrže reference na varijablu. Klase i strukture sadrže podatke. Ovaj članak govori o razlici između klase i strukture u C #. ključna razlika između klase i strukture u C # je, klasa je tip podataka referentnog tipa, dok je struktura vrsta podataka tipa vrijednosti.

SADRŽAJ

1. Pregled i ključne razlike
2. Što je klasa u C #
3. Što je struktura u C #
4. Sličnosti između klase i strukture u C #
5. Usporedna usporedba - razred prema strukturi u C # u tabelarnom obliku
6. Sažetak

Što je klasa u C #?

U OOP-u se sve smatra objektom. U programu ili softveru postoji bilo koji broj objekata. Ti objekti ne postoje izolirano. Svaki objekt interaktivno djeluje s drugim objektima. Ta se komunikacija događa pomoću akcija. Objekt se sastoji od atributa i metoda. Atributi definiraju karakteristike objekta, a metode definiraju radnje ili ponašanja objekta. Objekti se stvaraju pomoću klase. Klasa je slična opisu ili nacrtu za stvaranje objekta. Klasa ima atribute i metodu koje bi trebale biti sadržane u objektu. Stvaranje objekta pomoću klase poznato je kao instanciation. Za stvaranje objekta tipa Student trebao bi postojati razred koji se zove Student. Za definiranje klase u C # koristi se ključna riječ 'class'.

Klasa sadrži konstruktor. To je posebna funkcija koja se izvršava kad god se kreira novi objekt klase. Konstruktor ima isti naziv kao i klasa. Nema vrstu povratka. Zadani konstruktor nema parametre. Parametrizirani konstruktor sadrži parametre. Klasa može sadržavati i destruktor. To je posebna funkcija koja se izvršava kada objekt klase izađe iz okvira. Destruktor ima isto ime kao i naziv klase i započinje s ~. Ne vraća nikakve vrijednosti i ne zahtijeva parametre.

Razred Student sadrži atribute i metode koji bi trebali postojati u stvorenim objektima.

pomoću sustava;

namespace Application1

student razreda

int studentID;

naziv niza;

javni Student (int sid, ime niza)

studentID = sid;

ime = ime;

-Student ();

javni nevažeći prikazDetails ()

Konzola. WriteLine ("Student ID je 0", studentID);

Konzola. WriteLine ("Ime učenika je 0", ime);

razred StudentInfomation

statička praznina Main (string [] args)

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

s.displayDetails ();

Console.ReadLine ();

Prema gore navedenom programu, imenski se prostor naziva Application 1. Prostor imena sadrži povezani skup klasa. Student razreda ima dva svojstva ID i ime učenika. U glavnom programu nastaje Studentski objekt. Taj je objekt '. Prilikom stvaranja objekta konstruktor postavlja vrijednosti. Zatim se poziva metoda displayDetails. To će ispisati id i ime učenika.

Razredi također mogu implementirati nasljedstvo. Nasljeđivanje je značajka objektno orijentiranog programiranja. To je upotreba atributa i metoda već postojeće klase. Stoga klasa može naslijediti drugu klasu.

Što je struktura u C #?

Struktura je vrsta podataka tipa vrijednosti u C #. To je jedna varijabla koja sadrži više vrsta podataka. Struktura može predstavljati određeni zapis. Struktura sadrži atribute. Učenik ima atribute poput id, imena i dobi. Struktura se definira pomoću ključne riječi 'struct'. Program sa strukturom je sljedeći.

pomoću sustava;

struct Student

javni int id;

naziv javnog niza;

;

Student javne škole ()

javni statički void main (string [] args)

Student s;

s.id = 1;

s.name = "Ann";

Console.WriteLine ("Student ID 0", s.id);

Console.WriteLine ("Ime učenika 0", s.name);

Console.ReadLine ();

Prema gore navedenom programu, struktura sadrži dva svojstva. Oni su id i ime. U glavnom programu, Studentova izjava navodi tip studenta. Zatim su id i ime dobili vrijednosti. Konačno, one su ispisane na ekranu.

Nije moguće promijeniti zadani konstruktor strukture jer je zadani konstruktor automatski definiran. Struktura ne sadrži razarače. Za razliku od klase, struktura ne može naslijediti drugu klasu ili drugu strukturu.

Koje su sličnosti klase i strukture u C #?

  • Oboje imaju atribute i metode.
  • I klasa i struktura mogu implementirati jedno ili više sučelja.

Koja je razlika između klase i strukture u C #?

Razred prema strukturi u C #

Klasa je nacrt koji se koristi za stvaranje predmeta. Struktura je vrsta podataka tipa vrijednosti koja može sadržavati povezane podatke različitih tipova podataka.
 Vrsta podataka
Klasa je vrsta podataka referentnog tipa. Struktura je vrsta podataka tipa vrijednosti.
baština
Razred može naslijediti iz drugih klasa ili struktura. Struktura ne može naslijediti druge klase ili strukture.
 primjeru
Klasa izrađuje predmet pomoću nove ključne riječi. Struktura instancira objekt bez korištenja nove ključne riječi.
Zadani konstruktor
Može promijeniti zadani konstruktor klase. Ne može se promijeniti zadani konstruktor strukture. Zadani konstruktor automatski se definira.
peć za sagorijevanje otpadaka
Klasa može imati destruktor. Struktura nema destruktor.

Sažetak - Razred vs struktura u C # 

C # je programski jezik koji je kreirao Microsoft. U programiranju treba pohraniti podatke. Podaci se pohranjuju na memorijskim mjestima, a poznati su kao varijabla. Svaka varijabla ima određenu vrstu podataka koju treba pohraniti. Mogu biti vrste podataka vrijednosti vrijednosti i referentne vrste podataka. Vrste podataka vrste vrijednosti pohranjuju stvarnu vrijednost. Podaci tipa referentne vrste pohranjuju referencu na varijablu. Razred i struktura imaju različite vrste podataka. Razlika između klase i strukture u C # je, klasa je tip podataka referentnog tipa dok je struktura vrsta podataka tipa vrijednosti.

Preuzmite PDF razreda i strukture u C #

Možete preuzeti PDF verziju ovog članka i koristiti je za izvanmrežne svrhe, prema napomeni. Molimo preuzmite PDF verziju ovdje: Razlika između klase i strukture u C #

Referenca:

1.tutorialspoint.com. "C # klase." Točka, dostupno ovdje 
2.tutorialspoint.com. "C # strukture." Točka, dostupno ovdje 

Ljubaznošću slike:

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