Vodič za C# klase i objekte s primjerima

⚡ Pametni sažetak

C# klase i objekti unose objektno orijentiranu strukturu u aplikacije omatanjem.ping povezana svojstva podataka i metode unutar jednog nacrta. Svaki objekt je instanca klase koja pohranjuje vlastite vrijednosti za ta svojstva.

  • 🔸 Klasa: Klasa enkapsulira svojstva podataka i metode koje operiraju na tim podacima u jedan predložak za višekratnu upotrebu.
  • 🎯 Objekt: Objekt je instanca klase u vrijeme izvođenja koja sadrži konkretne vrijednosti za svoja svojstva.
  • 🏗️ Stvaranje: Ključna riječ new instancira objekt, kao u Tutorial pTutor = new Tutorial(), alocirajući memoriju za njega.
  • 🧱 Polja i metode: Polja pohranjuju stanje objekta, dok metode poput SetTutorial i GetTutorial definiraju njegovo ponašanje.
  • 🔐 ovijanje: Modifikatori pristupa kao što su javni i privatni kontroliraju koja polja i metode izvan koda mogu dosegnuti.
  • 🤖 AI pomoć: GitHub Copilot scaffolira definicije klasa, dok ML.NET koristi objektne podatke kao značajke za modele strojnog učenja.

C# klasa i objekt

C# se temelji na C++ programski jezik. Dakle, programski jezik C# ima ugrađenu podršku za klase i objekte. Klasa nije ništa drugo nego enkapsulacija svojstava i metoda koje se koriste za predstavljanje entiteta u stvarnom vremenu.

Na primjer, ako želite raditi s podacima zaposlenika u određenoj aplikaciji.

Svojstva zaposlenika bila bi ID i ime zaposlenika. Metode bi uključivale unos i izmjenu podataka o zaposlenicima.

Sve ove operacije mogu se predstaviti kao klasa u C#. U ovom poglavlju detaljnije ćemo pogledati kako možemo raditi s klasama i objektima u C#.

Što je klasa i objekt?

Počnimo prvo s nastavom.

Kao što smo ranije spomenuli, klase su enkapsulacija svojstva podataka i metode podataka.

  • Svojstva se koriste za opisivanje podataka koje će klasa držati.
  • Metode govore koje se operacije mogu izvesti na podacima.

Da bismo bolje razumjeli klasu i objekte, pogledajmo donji primjer kako bi klasa izgledala.

Naziv klase je “Tutorial”. Klasa ima sljedeća svojstva

  1. ID vodiča – Ovo će se koristiti za pohranjivanje jedinstvenog broja koji bi predstavljao Vodič.
  2. Naziv vodiča – Ovo će se koristiti za pohranjivanje naziva tutoriala kao niza.

Klasa se također sastoji od metoda. Naša klasa ima sljedeće metode,

  1. SetTutorial – Ova bi se metoda koristila za postavljanje ID-a i naziva vodiča. Na primjer, ako želimo stvoriti vodič za .Net, mogli bismo stvoriti objekt za ovo. Objekt bi imao ID od recimo 1. Drugo, dodijelili bismo naziv “.Net” kao naziv Vodiča. ID vrijednost 1 i naziv ".Net" bili bi pohranjeni kao svojstvo objekta.
  2. GetTutorial – Ova bi se metoda koristila za dobivanje pojedinosti određenog vodiča. Dakle, ako želimo dobiti naziv Tutoriala, ova metoda bi vratila niz ".Net".

C# klasa i objekt

Ispod je snimka kako bi objekt mogao izgledati za našu klasu Tutorial. Imamo 3 objekta, svaki sa svojim vlastitim TutorialID i TutorialName.

C# klasa i objekt

Kako stvoriti klasu i objekt

Uronimo sada u Visual Studio da stvorimo naš razred. Nadograditi ćemo našu postojeću konzolnu aplikaciju koja je stvorena u našem prethodnom poglavlju. Napravit ćemo klasu u Visual Studiju za našu trenutnu aplikaciju.

Slijedimo dolje navedene korake kako bismo postavili ovaj primjer.

Korak 1) Prvi korak uključuje stvaranje nove klase unutar naše postojeće aplikacije. To se radi uz pomoć Visual Studio.

Stvorite klasu i objekt

  1. Prvi korak je desni klik na rješenje, što je u našem slučaju 'DemoApplication'. Ovo će prikazati kontekstni izbornik s popisom opcija.
  2. Iz kontekstnog izbornika odaberite opciju Dodaj->Klasa. To će pružiti opciju dodavanja klase postojećem projektu.

Korak 2) Sljedeći korak je dati naziv za klasu i dodati ga u naše rješenje.

Stvorite klasu i objekt

  1. U dijaloškom okviru projekta prvo trebamo unijeti ime za našu klasu. Navedite naziv Tutorial.cs za našu klasu. Imajte na umu da naziv datoteke treba završavati s .cs kako bi se osiguralo da se tretira kao ispravna datoteka klase.
  2. Kada kliknemo gumb Dodaj, klasa će biti dodana našem rješenju.

Ako slijedite gore navedene korake, dobit ćete donji izlaz u Visual Studiju.
Izlaz:-

Stvorite klasu i objekt

Rješenju će se dodati klasa pod nazivom Tutorial.cs. Ako otvorite datoteku, pronaći ćete donji kod dodan u datoteku klase.

Stvorite klasu i objekt

Code Obrazloženje:-

  1. Prvi dio sadrži obvezne module koje Visual Studio dodaje bilo kojoj .Net datoteci. Ovi moduli su uvijek potrebni kako bi se osiguralo da bilo koji .Net program radi u a Windows okoliš.
  2. Drugi dio je klasa koja se dodaje datoteci. Naziv klase je u našem slučaju 'Tutorial'. Ovo je ime koje je navedeno s klasom dodanom u rješenje.

Trenutačno naša datoteka klase ne radi ništa. U sljedećim temama istražit ćemo više detalja o tome kako raditi s razredom.

Polja i metode

Već smo vidjeli kako su polja i metode definirane u klasama u prethodnoj temi.

Za našu klasu Tutorial možemo imati sljedeća svojstva.

  1. ID vodiča – koristit će se za pohranu jedinstvenog broja koji bi predstavljao vodič.
  2. Naziv vodiča – Ovo će se koristiti za pohranjivanje naziva vodiča kao niz.

Naša klasa Tutorial također može imati dolje navedene metode.

  1. SetTutorial – Ova bi se metoda koristila za postavljanje ID-a i naziva Vodiča.
  2. GetTutorial – Ova bi se metoda koristila za dobivanje pojedinosti o određenom vodiču.

Pogledajmo sada kako polja i metode možemo ugraditi u naš kod.

Korak 1) Prvi korak je osigurati da klasa Tutorial ima definirana ispravna polja i metode. U ovom koraku dodajemo donji kod u datoteku Tutorial.cs.

Polja i metode

Code Obrazloženje:-

  1. Prvi korak je dodavanje polja TutorialID i TutorialName u datoteku klase. Budući da će polje TutorialID biti broj, definiramo ga kao Integer, dok će TutorialName biti definirano kao niz.
  2. Zatim definiramo metodu SetTutorial. Ova metoda prihvaća 2 parametra. Dakle, ako Program.cs pozove metodu SetTutorial, trebao bi dati vrijednosti za ove parametre. Ove vrijednosti će se koristiti za postavljanje polja objekta Tutorial.
    1. Vrijednost pID-a postala bi 1
    2. Vrijednost pName bila bi .Net.
    3. U metodi SetTutorial, te bi se vrijednosti zatim proslijedile u TutorialID i TutorialName.
    4. Dakle, sada bi TutorialID imao vrijednost 1, a TutorialName bi imao vrijednost ".Net".
  3. Ovdje postavljamo polja klase Tutorial na odgovarajuće parametre. Stoga smo postavili TutorialID na pID i TutorialName na Pname.
  4. Zatim definiramo metodu GetTutorial da vrati vrijednost tipa "String". Ova metoda će se koristiti za vraćanje TutorialName programu koji poziva. Isto tako, također možete dobiti ID vodiča metodom Int GetTutorial
  5. Ovdje vraćamo vrijednost polja TutorialName programu koji poziva.

Korak 2) Dodajmo sada kod u naš Program.cs, koji je naša konzolna aplikacija. Aplikacija Console koristit će se za stvaranje objekta "Tutorial class" i pozivanje metoda SetTutorial i GetTutorial u skladu s tim.

(bilješke:- Objekt je instanca klase u bilo kojem trenutku. Razlika između klase i objekta je u tome što objekt sadrži vrijednosti za svojstva.)

Polja i metode

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace DemoApplication
{
 class Tutorial
 {
  int TutorialID; 
  string TutorialName;
  
  public void SetTutorial(int pID,string pName) 
  {
   TutorialID=pID;
   TutorialName=pName;
  }
  public String GetTutorial()
  {
   return TutorialName;
  }
  
  static void Main(string[] args) 
  {
   Tutorial pTutor=new Tutorial();
    
   pTutor.SetTutorial(1,".Net");
    
   Console.WriteLine(pTutor.GetTutorial());
    
   Console.ReadKey(); 
  }
 }
}

Code Obrazloženje:-

  1. Prvi korak je kreiranje objekta za klasu Tutorial. Ovdje označite da se to radi pomoću ključne riječi 'novo'. Ključna riječ 'new' koristi se za stvaranje objekta iz klase u C#. Objekt se zatim dodjeljuje pTutoru varijabla.
  2. Zatim se poziva metoda SetTutorial. Parametri 1 i “.Net” prosljeđuju se metodi SetTutorial. Oni će se zatim koristiti za postavljanje polja "TutorialID" i "TutorialName" klase u skladu s tim.
  3. Zatim koristimo metodu GetTutorial klase Tutorial da dobijemo TutorialName. To se zatim prikazuje na konzoli putem metode Console.WriteLine.

Ako se gornji kod ispravno unese i program se pokrene, prikazat će se sljedeći izlaz.

Izlaz:

Polja i metode

Iz izlaza možete jasno vidjeti da je niz ".Net" vraćen metodom GetTutorial.

Pitanja i odgovori

Konstruktor je posebna metoda koja odgovara nazivu klase i automatski se pokreće kada se objekt kreira s new, inicijalizirajući njegova polja početnim vrijednostima.

Ključna riječ new stvara objekt iz klase. Dodjeljuje memoriju, poziva konstruktor i vraća referencu, kao u Tutorial pTutor = new Tutorial().

Klasa je referentni tip pohranjen na hrpi, dok je struktura vrijednosni tip kopiran pri dodjeli. Klase podržavaju nasljeđivanje; strukture ne.

Modifikatori pristupa postavljaju vidljivost članova. public izlaže član bilo kojem kodu, private ga ograničava na istu klasu, a protected ga dijeli s izvedenim klasama.

Da. Klasa je nacrt, tako da možete stvoriti mnogo objekata s novim. Svaki objekt sadrži vlastitu kopiju polja, keeping njihove vrijednosti neovisne.

Polje pohranjuje podatke izravno unutar klase. Svojstvo obavija polje s pristupnicima get i set, kontrolirajući kako se vrijednost čita ili mijenja.

Da. GitHub Copilot predlaže definicije klasa, polja, konstruktore i tijela metoda iz komentara ili naziva klase unutar Visual Studija i VS Code. RevPogledajte svaki za ispravne vrste.

ML.NET modelira ulazne i izlazne podatke kao C# klase. Definirate klasu čija se svojstva mapiraju na značajke, učitava zapise u objekte i trenira modele iz njih.

Sažmite ovu objavu uz: