• Umumiy sinf statik maydonlari
  • Bir nechta umumiy parametrlardan foydalanish.
  • 1. System. Object sinfi va uning usullari Umumlashtirish




    Download 70,5 Kb.
    bet6/12
    Sana18.05.2024
    Hajmi70,5 Kb.
    #241174
    1   2   3   4   5   6   7   8   9   ...   12
    Bog'liq
    22-09

    Standart qiymatlar
    Ba'zan umumiy parametrlarning o'zgaruvchilariga, shu jumladan null ga boshlang'ich qiymatni belgilash kerak bo'ladi. Lekin biz uni bevosita tayinlay olmaymiz:
    T id = null;
    Bunday holda biz default(T) operatoridan foydalanishimiz kerak. U mos yozuvlar turlariga null va qiymat turlariga 0 ni tayinlaydi:

    class Account
    {
    T id = default(T);
    }


    Umumiy sinf statik maydonlari
    Umumiy sinf ma'lum bir tur bilan yozilsa, uning statik a'zolari to'plami yaratiladi. Masalan, Account sinfida quyidagi statik maydon aniqlanadi:
    class Account
    {
    public static T session;
    public T Id { get; set; }
    public int Sum { get; set; }
    }
    Endi biz sinfni ikkita turdagi int va string bilan yozamiz:

    Account account1 = new Account { Sum = 5000 };
    Account.session = 5436;
    Account account2 = new Account { Sum = 4000 };
    Account.session = "45245";
    Console.WriteLine(Account.session); // 5436
    Console.WriteLine(Account.session); // 45245
    Natijada, Account va Account uchun session oʻzgaruvchisi yaratiladi.

    Bir nechta umumiy parametrlardan foydalanish.
    Umumlashganlar bir vaqtning o'zida bir nechta umumiy parametrlardan foydalanishi mumkin, ular turli xil turlarini ifodalashi mumkin:
    class Transaction
    {
    public U FromAccount { get; set; } // qaysi hisobdan pul o'tkazmasi
    public U ToAccount { get; set; } // pul o'tkazmasi qaysi hisob raqamiga
    public V Code { get; set; } // operatsiya kodi
    public int Sum { get; set; } // o'tkazma summasi
    }
    Bu erda Transaction sinfi ikkita umumiy parametrdan foydalanadi. Keling, ushbu sinfni qo'llaymiz:

    Account acc1 = new Account { Id = 1857, Sum = 4500 };
    Account acc2 = new Account { Id = 3453, Sum = 5000 };
    Transaction transaction1 = new Transaction
    {
    FromAccount = acc1,
    ToAccount = acc2,
    Code = "45478758",
    Sum = 900
    };
    Bu yerda Transaction obyekti Account va string turlari bo‘yicha teriladi. Ya'ni U universal parametr sifatida Account sinfi, V parametri uchun esa string turi qo'llaniladi. Shu bilan birga, siz ko'rib turganingizdek, Transaction yoziladigan sinfning o'zi umumiydir.


    Download 70,5 Kb.
    1   2   3   4   5   6   7   8   9   ...   12




    Download 70,5 Kb.

    Bosh sahifa
    Aloqalar

        Bosh sahifa



    1. System. Object sinfi va uning usullari Umumlashtirish

    Download 70,5 Kb.