C# Class & Object Tutorial med exempel

C# är baserat på C++ programmeringsspråk. Därför har programmeringsspråket C# inbyggt stöd för klasser och objekt. En klass är inget annat än en inkapsling av egenskaper och metoder som används för att representera en realtidsenhet.

Till exempel om du vill arbeta med anställdas data i en viss applikation.

Egenskaperna för den anställde skulle vara den anställdes ID och namn. Metoderna skulle inkludera inmatning och ändring av personaldata.

Alla dessa operationer kan representeras som en klass i C#. I det här kapitlet ska vi titta närmare på hur vi kan arbeta med klasser och objekt i C#.

Vad är klass och objekt?

Låt oss först börja med klasser.

Som vi diskuterade tidigare klasser är en inkapsling av dataegenskaper och datametoder.

  • Egenskaperna används för att beskriva data som klassen kommer att hålla.
  • Metoderna berättar vad det är för operationer som kan utföras på datan.

För att få en bättre förståelse av klass och objekt, låt oss titta på ett exempel nedan på hur en klass skulle se ut.

Namnet på klassen är "Tutorial". Klassen har följande egenskaper

  1. Handlednings-ID – Detta kommer att användas för att lagra ett unikt nummer som skulle representera handledningen.
  2. Handledningsnamn – Detta kommer att användas för att lagra namnet på handledningen som en sträng.

En klass består också av metoder. Vår klass har följande metoder,

  1. SetTutorial – Den här metoden skulle användas för att ställa in handledningens ID och namn. Så om vi till exempel vill skapa en handledning för .Net, kan vi skapa ett objekt för detta. Objektet skulle ha ett ID på låt oss säga 1. För det andra skulle vi tilldela namnet ".Net" som namnet på handledningen. ID-värdet 1 och namnet ".Net" skulle lagras som en egenskap för objektet.
  2. Gettutorial – Den här metoden skulle användas för att få information om en specifik handledning. Så om vi ville få namnet på handledningen, skulle den här metoden returnera strängen ".Net".

C# klass och objekt

Nedan är en ögonblicksbild av hur ett objekt kan se ut för vår handledningsklass. Vi har 3 objekt, vart och ett med sitt eget TutorialID och TutorialName.

C# klass och objekt

Hur man skapar en klass och ett objekt

Låt oss nu dyka in Visual Studio att skapa vår klass. Vi kommer att bygga vidare på vår befintliga konsolapplikation som skapades i vårt tidigare kapitel. Vi kommer att skapa en klass i Visual Studio för vår nuvarande applikation.

Låt oss följa stegen nedan för att få detta exempel på plats.

Steg 1) Det första steget innebär skapandet av en ny klass inom vår befintliga applikation. Detta görs med hjälp av Visual Studio.

Skapa en klass och ett objekt

  1. Det första steget är att högerklicka på lösningen, som i vårt fall är 'DemoApplication'. Detta kommer att få upp en snabbmeny med en lista med alternativ.
  2. Välj alternativet Lägg till->Klass i snabbmenyn. Detta ger möjlighet att lägga till en klass till det befintliga projektet.

Steg 2) Nästa steg är att ge klassen ett namn och lägga till det i vår lösning.

Skapa en klass och ett objekt

  1. I projektdialogrutan måste vi först ange ett namn för vår klass. Låt oss ange ett namn på Tutorial.cs för vår klass. Observera att filnamnet ska sluta med .cs för att säkerställa att den behandlas som en korrekt klassfil.
  2. När vi klickar på knappen Lägg till läggs klassen till i vår lösning.

Om ovanstående steg följs får du utdata nedan i Visual Studio.
Produktion:-

Skapa en klass och ett objekt

En klass som heter Tutorial.cs kommer att läggas till i lösningen. Om du öppnar filen hittar du nedanstående kod lagt till klassfilen.

Skapa en klass och ett objekt

Kodförklaring:-

  1. Den första delen innehåller de obligatoriska modulerna som Visual Studio lägger till i alla .Net-filer. Dessa moduler krävs alltid för att säkerställa att alla .Net-program körs i en Windows miljö.
  2. Den andra delen är klassen som läggs till i filen. Klassnamnet är "Tutorial" i vårt fall. Detta är namnet som specificerades när klassen lades till i lösningen.

För tillfället gör vår klassfil ingenting. I följande ämnen kommer vi att undersöka mer detaljer om hur man arbetar med klassen.

Fält och metoder

Vi har redan sett hur fält och metoder definieras i klasser i det tidigare ämnet.

För vår handledningsklass kan vi ha följande egenskaper.

  1. Handlednings-ID – Detta kommer att användas för att lagra ett unikt nummer som skulle representera handledningen.
  2. Tutorial Name – Detta kommer att användas för att lagra namnet på handledningen som en sträng.

Vår handledningsklass kan också ha de nedan nämnda metoderna.

  1. SetTutorial – Denna metod skulle användas för att ställa in handledningens ID och namn.
  2. GetTutorial – Den här metoden skulle användas för att få information om en specifik handledning.

Låt oss nu se hur vi kan införliva fält och metoder i vår kod.

Steg 1) Det första steget är att säkerställa att klassen Tutorial har rätt fält och metoder definierade. I det här steget lägger vi till koden nedan i filen Tutorial.cs.

Fält och metoder

Kodförklaring:-

  1. Det första steget är att lägga till fälten TutorialID och TutorialName till klassfilen. Eftersom TutorialID-fältet kommer att vara ett nummer, definierar vi det som ett heltal, medan TutorialName kommer att definieras som en sträng.
  2. Därefter definierar vi SetTutorial-metoden. Denna metod accepterar 2 parametrar. Så om Program.cs anropar SetTutorial-metoden, skulle den behöva tillhandahålla värdena för dessa parametrar. Dessa värden kommer att användas för att ställa in fälten för självstudieobjektet.
  3. Anmärkningar: låt oss ta ett exempel och anta att vår Program.cs-fil anropar SetTutorial med parametrarna "1" och ".Net". Följande steg kommer att utföras som ett resultat av detta,

    1. Värdet på pID skulle bli 1
    2. Värdet på pName skulle vara .Net.
    3. I SetTutorial-metoden skulle dessa värden sedan skickas till TutorialID och TutorialName.
    4. Så nu skulle TutorialID ha värdet 1 och TutorialName skulle ha värdet ".Net".
  4. Här ställer vi in ​​fälten i klassen Tutorial till parametrarna i enlighet därmed. Så vi ställer in TutorialID till pID och TutorialName till Pname.
  5. Vi definierar sedan GetTutorial-metoden för att returnera värde av typen "String". Denna metod kommer att användas för att returnera TutorialName till det anropande programmet. På samma sätt kan du också få handlednings-id med metoden Int GetTutorial
  6. Här returnerar vi värdet för fältet TutorialName till det anropande programmet.

Steg 2) Låt oss nu lägga till kod till vår Program.cs, som är vår konsolapplikation. Konsolapplikationen kommer att användas för att skapa ett objekt i "Tutorial-klassen" och anropa SetTutorial- och GetTutorial-metoderna i enlighet med detta.

(Anmärkningar:- Ett objekt är en instans av en klass vid varje given tidpunkt. Skillnaden mellan en klass och ett objekt är att objektet innehåller värden för egenskaperna.)

Fält och metoder

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(); 
  }
 }
}

Kodförklaring:-

  1. Det första steget är att skapa ett objekt för klassen Tutorial. Markera här att detta görs genom att använda nyckelordet 'ny'. Nyckelordet 'nya' används för att skapa ett objekt från en klass i C#. Objektet tilldelas sedan till pTutor variabel.
  2. Metoden SetTutorial kallas då. Parametrarna för 1 och ".Net" skickas till SetTutorial-metoden. Dessa kommer sedan att användas för att ställa in fälten "TutorialID" och "TutorialName" för klassen i enlighet med detta.
  3. Vi använder sedan GetTutorial-metoden i klassen Tutorial för att få TutorialName. Detta visas sedan för konsolen via metoden Console.WriteLine.

Om ovanstående kod anges korrekt och programmet körs kommer följande utdata att visas.

Produktion:

Fält och metoder

Från utgången kan du tydligt se att strängen ".Net" returnerades av metoden GetTutorial.

Sammanfattning

  • Klassen är en inkapsling av dataegenskaper och metoder. Egenskaperna används för att definiera typen av data i klassen. Metoderna definierar de operationer som kan utföras på data.