• Anonim metod
  • Mirzo Ulug‘bek nomidagi O‘zbekiston Milliy universiteti Amaliy matematika va intellektual texnologiyalar




    Download 293,8 Kb.
    bet5/7
    Sana19.01.2024
    Hajmi293,8 Kb.
    #141255
    1   2   3   4   5   6   7
    Bog'liq
    Ibrohimova Sumayya Hamza qizi

    Misollar

    Anonim metodlar


    Ibrohimova Sumayya Hamza qizi
    Yuqoridagi Func, Action va Predicate mavzularida ushbu delegatlarning anonim metod bilan qo'llanishini ko'rdik, lekin anonim metod qanday ekanligi haqida endi gaplashamiz.😊
    Nomidan ko'rinib turibdiki, Anonim metod - bu ismsiz metod. U metod bo'lsa, delegatlar mavzusida nima qilyapti degan savol tug'ilishi mumkin. Buning sababi shundaki, Anonim metod delegat tushunchasi bilan chambarchas bog'liq va delegatlarni chaqirish uchun ishlatiladi.
    Qisqacha qilib aytganda metodlarni nima deb nomlashni bilmasdan nom qidirgan paytingizda: "keling endi shu metodni benom qoldiramiz" deb yordamga keladi.
    Anonim metod umumiy ko'rinishi:

    Anonim metoddan foydalanish uchun quyidagi qadamlarni bajarish yetarli:

    • Delegat e'lon qilish

    • Delegatdan obyekt hosil qilish

    • delegate kalit so'zi yordamida hosil qilingan obyektga mos nomsiz metod yozish

    • delegatdan foydalanish

    Misol:
    using System;

    namespace Delegates
    {
    class Program
    {
    //delegat e'lon qilish
    public delegate void Print(string s);
    static void Main(string[] args)
    {
    //delegatdan obyekt hosil qilib unga anonim metod tayinlash
    Print print;
    print = delegate (string str)
    {
    Console.WriteLine($"Hello {str}");
    };

    //delegatni chaqirish
    print("DOT-NET.UZ");

    Console.ReadKey();
    }
    }
    }

    //Chiquvchi:
    // Hello DOT-NET.UZ
    Anonim metodlar ichida global o'zgaruvchilardan ham foydalanish mumkin. Quyidagi misolda biror sonning ko'rsatilgan darajasini hisoblovchi dastur ko'rsatilgan(anonim metod ichida 'a' global holatda, 'n' esa 'N' nomi bilan parametr sifatida ishlatilgan):
    using System;

    namespace Delegates
    {
    class Program
    {
    //delegat e'lon qilish
    public delegate int Degree(int i);
    static void Main(string[] args)
    {
    //o'zgaruvchilarni kiritish
    Console.Write("Son kiriting: ");
    int a = int.Parse(Console.ReadLine());
    Console.Write("Darajani kiriting: ");
    int n = int.Parse(Console.ReadLine());

    //delegatdan obyekt hosil qilib unga anonim metod tayinlash
    Degree d = delegate (int N)
    {
    return (int)Math.Pow(a, N);
    };

    //delegatni chaqirish
    Console.WriteLine($"\n{a} sonining {n}-darajasi: {d(n)}");

    Console.ReadKey();
    }
    }
    }
    Natija:


    Download 293,8 Kb.
    1   2   3   4   5   6   7




    Download 293,8 Kb.

    Bosh sahifa
    Aloqalar

        Bosh sahifa



    Mirzo Ulug‘bek nomidagi O‘zbekiston Milliy universiteti Amaliy matematika va intellektual texnologiyalar

    Download 293,8 Kb.