Урок за C# клас и обект с примери

C# се основава на C++ език за програмиране. Следователно езикът за програмиране C# има вградена поддръжка за класове и обекти. Класът не е нищо друго освен капсулиране на свойства и методи, които се използват за представяне на обект в реално време.

Например, ако искате да работите с данни на служител в конкретно приложение.

Свойствата на служителя ще бъдат ID и името на служителя. Методите ще включват въвеждане и промяна на данни на служителите.

Всички тези операции могат да бъдат представени като клас в C#. В тази глава ще разгледаме по-подробно как можем да работим с класове и обекти в C#.

Какво е клас и обект?

Нека първо започнем с класовете.

Както обсъдихме по-рано класовете са капсулиране на свойства на данните намлява методи за данни.

  • Свойствата се използват за описание на данните, които класът ще съхранява.
  • Методите казват какви са операциите, които могат да бъдат извършени върху данните.

За да разберете по-добре класа и обектите, нека разгледаме пример по-долу за това как би изглеждал клас.

Името на класа е „Урок“. Класът има следните свойства

  1. ID на урока – Това ще се използва за съхраняване на уникален номер, който ще представлява урока.
  2. Име на урока – Това ще се използва за съхраняване на името на урока като низ.

Класът също се състои от методи. Нашият клас има следните методи,

  1. SetTutorial – Този метод ще се използва за задаване на идентификатора и името на урока. Така например, ако искаме да създадем урок за .Net, може да създадем обект за това. Обектът ще има ID, да кажем, 1. Второ, ще присвоим име на „.Net“ като име на урока. Стойността на ID от 1 и името на „.Net“ ще бъдат съхранени като свойство на обекта.
  2. GetTutorial – Този метод ще се използва за получаване на подробности за конкретен урок. Така че, ако искаме да получим името на урока, този метод ще върне низа „.Net“.

C# клас и обект

По-долу е моментна снимка на това как може да изглежда даден обект за нашия урок. Имаме 3 обекта, всеки със собствен съответен TutorialID и TutorialName.

C# клас и обект

Как да създадете клас и обект

Нека сега се потопим в Visual Studio да създадем нашия клас. Ще надграждаме нашето съществуващо конзолно приложение, което беше създадено в предишната ни глава. Ще създадем клас във Visual Studio за нашето текущо приложение.

Нека следваме стъпките по-долу, за да поставим този пример на място.

Стъпка 1) Първата стъпка включва създаването на нов клас в нашето съществуващо приложение. Това става с помощта на Visual Studio.

Създайте клас и обект

  1. Първата стъпка е да щракнете с десния бутон върху решението, което в нашия случай е „DemoApplication“. Това ще изведе контекстно меню със списък с опции.
  2. От контекстното меню изберете опцията Добавяне->Клас. Това ще даде възможност за добавяне на клас към съществуващия проект.

Стъпка 2) Следващата стъпка е да предоставим име за класа и да го добавим към нашето решение.

Създайте клас и обект

  1. В диалоговия прозорец на проекта първо трябва да предоставим име за нашия клас. Нека предоставим име Tutorial.cs за нашия клас. Обърнете внимание, че името на файла трябва да завършва с .cs, за да се гарантира, че се третира като правилен клас файл.
  2. Когато щракнете върху бутона Добавяне, класът ще бъде добавен към нашето решение.

Ако следвате горните стъпки, ще получите изхода по-долу във Visual Studio.
Изход: -

Създайте клас и обект

Към решението ще бъде добавен клас с име Tutorial.cs. Ако отворите файла, ще намерите кода по-долу, добавен към файла на класа.

Създайте клас и обект

Обяснение на кода:-

  1. Първата част съдържа задължителните модули, които Visual Studio добавя към всеки .Net файл. Тези модули винаги са необходими, за да се гарантира, че всяка .Net програма работи в a Windows среда.
  2. Втората част е класът, който се добавя към файла. Името на класа в нашия случай е „Урок“. Това е името, което е посочено с класа, добавен към решението.

За момента нашият клас файл не прави нищо. В следващите теми ще разгледаме повече подробности как да работим с класа.

Полета и методи

Вече видяхме как се дефинират полета и методи в класове в по-ранната тема.

За нашия клас Tutorial можем да имаме следните свойства.

  1. ID на урока – Това ще се използва за съхраняване на уникален номер, който ще представлява урока.
  2. Име на урока – Това ще се използва за съхраняване на името на урока като a низ.

Нашият урок за обучение също може да има посочените по-долу методи.

  1. SetTutorial – Този метод ще се използва за задаване на идентификатора и името на урока.
  2. GetTutorial – Този метод ще се използва за получаване на подробности за конкретен урок.

Нека сега да видим как можем да включим полета и методи в нашия код.

Стъпка 1) Първата стъпка е да се гарантира, че класът Tutorial има правилните дефинирани полета и методи. В тази стъпка добавяме кода по-долу към файла Tutorial.cs.

Полета и методи

Обяснение на кода:-

  1. Първата стъпка е да добавите полетата на TutorialID и TutorialName към файла на класа. Тъй като полето TutorialID ще бъде число, ние го дефинираме като цяло число, докато TutorialName ще бъде дефинирано като низ.
  2. След това дефинираме метода SetTutorial. Този метод приема 2 параметъра. Така че, ако Program.cs извика метода SetTutorial, ще трябва да предостави стойностите на тези параметри. Тези стойности ще се използват за задаване на полетата на обекта Tutorial.
  3. Забележка: нека вземем пример и приемем, че нашият файл Program.cs извиква SetTutorial с параметрите “1” и “.Net”. Стъпките по-долу ще бъдат изпълнени в резултат на това,

    1. Стойността на pID ще стане 1
    2. Стойността на pName ще бъде .Net.
    3. В метода SetTutorial тези стойности ще бъдат предадени на TutorialID и TutorialName.
    4. Така че сега TutorialID ще има стойност 1, а TutorialName ще има стойност „.Net“.
  4. Тук настройваме съответно полетата на класа Tutorial на параметрите. Затова задаваме TutorialID на pID и TutorialName на Pname.
  5. След това дефинираме метода GetTutorial за връщане на стойност от типа „String“. Този метод ще се използва за връщане на TutorialName на извикващата програма. По същия начин можете също да получите идентификатора на урока с метода Int GetTutorial
  6. Тук връщаме стойността на полето TutorialName на извикващата програма.

Стъпка 2) Сега нека добавим код към нашия Program.cs, който е нашето конзолно приложение. Приложението Console ще се използва за създаване на обект от „класа Tutorial“ и съответно извикване на методите SetTutorial и GetTutorial.

(Забележка:- Един обект е екземпляр на клас във всеки даден момент. Разликата между клас и обект е, че обектът съдържа стойности за свойствата.)

Полета и методи

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

Обяснение на кода:-

  1. Първата стъпка е да създадете обект за класа Tutorial. Маркирайте тук, че това се прави с помощта на ключовата дума „ново“. Ключовата дума 'new' се използва за създаване на обект от клас в C#. След това обектът се присвоява на pTutor променлив.
  2. След това се извиква методът SetTutorial. Параметрите на 1 и “.Net” се предават на метода SetTutorial. След това те ще бъдат използвани за съответно задаване на полетата „TutorialID“ и „TutorialName“ на класа.
  3. След това използваме метода GetTutorial на класа Tutorial, за да получим TutorialName. След това това се показва на конзолата чрез метода Console.WriteLine.

Ако горният код е въведен правилно и програмата се изпълнява, ще се покаже следният изход.

Изход:

Полета и методи

От изхода можете ясно да видите, че низът „.Net“ е върнат от метода GetTutorial.

Oбобщение

  • Класът е капсулиране на свойства и методи на данни. Свойствата се използват за определяне на типа данни в класа. Методите определят операциите, които могат да се извършват върху данните.