• Equals metodi
  • O’zbekiston respublikasi oliy va o’rta maxsus ta’lim vazirligi buxoro davlat universiteti




    Download 221 Kb.
    bet24/25
    Sana29.01.2024
    Hajmi221 Kb.
    #147850
    1   ...   17   18   19   20   21   22   23   24   25
    Bog'liq
    O’zbekiston respublikasi oliy va o’rta maxsus ta’lim vazirligi b

    Object – global supersinf 
    С# da Object sinfi mavjud. U hama sinflar uchun supersinf hisoblanadi, ya’ni har 
    bir sinf Object sinfini kengaytiradi. Lekin class Ishchi : Object deb yozish kerak
    emas.Agar sinf uchun suersinf ko’rsatilmagan b’lsa Object sinfi uning supersinfi 


    63
    hisoblanadi.Object sinfi o’zgarubchisini ixtiyoriy ob’ektga ko’rsatkich sifatida 


    ishlatish mumkin:


    Object o = new Talaba("Sultonov M.U.", “2-I","Informatika"); 
    Keyinchalik esa keltirish mumkin: Talaba t = (Talaba)o;
    Object tipidagi ko’rsatkich asosan har xil tipli elementlarga ega bo’lgan berilganlar 
    shajrasini tuzish uchun ishlatiladi.
    Equals metodi 
    equals: agar ikki ko’rsatkich ayni bir xotirani egallab turgan bo’lsa true natija 
    qaytaradi.
    A.equals(B); 
    Bu yerda A va B ko’rsatkich tipga tegi
    C# spetsifikatsiyasidagi equals: 
    1. Refleksivlik. Ixtiyoriy null bo’lmagan х ko’rsatkich uchun x. equals(x) chaqiruv
    true natija beradi 
    2. Simmetriklik.Ixtiyoriy х va у ko’rsatkichlar uchun х.equals(у) chaqiruv true
    natija beradi faqat va faqat shu holdaki qachon у.equals(x) chaqiruv true natija 
    bersa.
    3. Tranzitivlik. Ixtiyoriy х va у ko’rsatkichlar uchun х.equals(у) va у.equals(z) 
    chaqiruv true natija bersa х.equals(z) chaqiruv ham true natija beradi.
    4. Qaramaqarshiliksizlik. Agar x va y ro’rsatkichlar ko’rsatadigar ob’ektlar 
    o’garmasa qayta х.equals(у) chaqiruv natijasi oldingi chaqiruv natijasi bilan bir xil
    bo’ladi. 
    5. Ixtiyoriy null bo’lmagan ko’rsatkich х uchun х.equals(null) chaqiruv false natija
    beradi.[6] 
    Sinf osti uchun oldin supersinf equals metodi chaqiriladi va agar u true natija bersa
    keyin maydonlar tekshiriladi 
    toString metodi 
    toString: ob’ekt qiymatini satr ifatida qaytaradi. Bu metod qariyb hamma sinflarda 
    qayta aniqlanadi va ob’ektning joriy qiymatini pechatga chiqarish uchun
    mo’ljallangan.


    64
    Nuqta sinfining toString metodi quyidagi satrni chiqaradi: "nuqtaning koordinatasi: 


    ("+x+", "+y+")"


    Ko’pincha sinflar toString metodi ni shunday realizatsiya qiladilarki, unda sinf 
    nomi va maydonlarning qiymatlari kvadrat qavs ichida chiqariladi
    Object sinfida bu metod sinf nomini va undan keyin uning xotiradagi adresini 
    chiqaradi
    Console

    .WriteLine (System.out);


    Quyidagi satrni chiqaradi: C#.io.PrintStream@2f668 4 
    Bu metod dasturni sozlashda ishlatilishi ham mumkin.
    Abstrakt sinfga doir misol: 
    using System;
    using System.Text; 
    namespace sinflar
    {
    public abstract class figura { 

    public int a;


    public figura(int x) { a = x; } 
    abstract public double yuzi();
    // public virtual double perimetr() { } 
    }
    public class aylana : figura { 
    public aylana(int x) : base(x) { }
    public override double yuzi() 
    { return a * a*Math.Pi; }

    public class turtburchak : figura

    public int b;
    public turtburchak(int x, int y) : base(x) { b =y; } 


    65
    public override double yuzi() 


    { return a*b; }



    class Program
    {

    static void Main(string[] args)



    figura F;
    aylana A = new aylana(5); 
    turtburchak T = new turtburchak(3,4);
    F = T; 
    Console.Write("Figura yuzasi =" + F.yuzi());
    Console.ReadKey(); 
    }
    }

    }


    Download 221 Kb.
    1   ...   17   18   19   20   21   22   23   24   25




    Download 221 Kb.

    Bosh sahifa
    Aloqalar

        Bosh sahifa



    O’zbekiston respublikasi oliy va o’rta maxsus ta’lim vazirligi buxoro davlat universiteti

    Download 221 Kb.