Skip to main content

Класове и Обекти - Сърцето на ООП

C# е обектно-ориентиран език, и понятията за класове, наследяване, и обекти са фундаментални за разработването на ефективни програми.

Класове 📐

Класът в C# е шаблон, който определя характеристиките и поведението на обектите (инстанциите).

Какво Съдържа Един Клас?

  • Полета (Fields): Променливите, които държат данните на обекта.
  • Методи (Methods): Действията, които обектът може да извършва.
  • Конструктори (Constructors): Специални методи за инициализация на нови обекти.

Дефиниция на Клас

public class Person {
private string name;
private int age;

// Конструктор
public Person(string name, int age) {
this.name = name;
this.age = age;
}

// Метод
public void Introduce() {
Console.WriteLine($"Hi, my name is {name}");
}
}

Наследяване: Йерархия на Класове 👨‍👦

Наследяването е процес, при който един клас (наследник) може да наследи характеристиките на друг клас (базов клас).

Основи на Наследяването

  • Наследникът получава всички public и protected членове на базовия клас.
  • В C#, един клас може да наследи само от един базов клас (единично наследяване).

Пример за Наследяване

public class Worker : Person {
private string jobTitle;

public Worker(string name, int age, string jobTitle)
: base(name, age) {
this.jobTitle = jobTitle;
}

public void Work() {
Console.WriteLine($"Working as a {jobTitle}");
}
}

Създаване и Използване на Обекти 🛠️

Обектите в C# са конкретни инстанции на класове, които се създават с ключовата дума new.

Инициализиране на Обект

Person person = new Person("John", 30);

Извикване на Метод на Обект

person.Introduce();

Интересни Факти и Съвети

  • В C#, всички класове наследяват от System.Object, което е основата на класовата йерархия.
  • Използването на base е ключово при наследяването, тъй като позволява на наследника да достъпи членовете на базовия клас.
  • Наследяването спомага за повторната употреба на код и структурирането на програмите в йерархични модели.