C# Constructor va Overloading — Oddiy va Tushunarli

c#-constructor-va-overloading-—-oddiy-va-tushunarli

🎯 C# Constructor va Overloading — Oddiy va Tushunarli

Dasturlashni o‘rganayotganimizda tez-tez uchraydigan ikkita muhim tushuncha mavjud:

constructor va overloading.

Bu maqolada ikkalasini ham oddiy misollar, real hayotiy qiyoslar va kod parchalar bilan tushuntirib beramiz.

🏗 Constructor nima?

Constructor — bu class obyektini yaratishda avtomatik ishlaydigan maxsus metod.

  • Class nomi bilan bir xil bo‘ladi.
  • Return type yozilmaydi.
  • Obyektga boshlang‘ich qiymatlarni berish uchun ishlatiladi.

👉 Real hayotiy qiyos:

  • Siz yangi uy qurdingiz (new qildingiz).
  • Uyga kirishingiz bilan constructor sizni kutib olib: “Salom, choy tayyor!” deydi.

Misol:

class House
{
    public string Owner;

    // Constructor
    public House(string ownerName)
    {
        Owner = ownerName;
        Console.WriteLine($"Salom {ownerName}, uyingiz tayyor ✅");
    }
}

class Program
{
    static void Main()
    {
        House myHouse = new House("Boltavoy");
        // Natija: Salom Boltavoy, uyingiz tayyor ✅
    }
}

🌀 Overloading nima?

Method overloading — bu bir xil nomli metodlarni turli parametrlar bilan e’lon qilish.

Parametrlar soni yoki turi farqlanadi.

Bu kodni o‘qishga qulay va moslashuvchan qiladi.

👉 Real hayotiy qiyos:

Kafeda “Qahva bormi?” deysiz.

Ofitsiant sizga turli variantlar taklif qiladi: oddiy, sutli, shakarli.

Hamma joyda nomi “qahva”, lekin tayyorlanishi farq qiladi.

class Coffee
{
    public void MakeCoffee()
    {
        Console.WriteLine("Oddiy qahva ☕");
    }

    public void MakeCoffee(string milk)
    {
        Console.WriteLine("Sutli qahva 🥛+☕");
    }

    public void MakeCoffee(string milk, string sugar)
    {
        Console.WriteLine("Sutli va shakarli qahva 🍬+🥛+☕");
    }
}

class Program
{
    static void Main()
    {
        Coffee coffee = new Coffee();

        coffee.MakeCoffee();                 // Oddiy qahva
        coffee.MakeCoffee("milk");           // Sutli qahva
        coffee.MakeCoffee("milk", "sugar");  // Sutli va shakarli qahva
    }
}

🔑 Xulosa

Constructor → obyekt yaratilganda avtomatik ishga tushadi.

Overloading → bitta nom, lekin parametrlariga qarab turlicha ishlaydi.

Total
0
Shares
Leave a Reply

Your email address will not be published. Required fields are marked *

Previous Post
a-round-up-of-all-the-great-talks-from-mozcon-london-2025

A Round-up of All the Great Talks From MozCon London 2025

Next Post
pi-usa-engineered-precision-gantry-positioning-systems

PI USA Engineered Precision Gantry Positioning Systems

Related Posts