// TwoDShapesinfidan olingan to'rtburchaklar uchun sinf. class Rectangle : TwoDShape { // To'rtburchak kvadrat bo'lsa, mantiqiy true qiymatni qaytarish. public bool IsSquareO { if(Width == Height) return true; return false; } // To'rtburchakning maydonini qaytarish. public double Area() { return Width * Height; } } Rectanglesinfi TwoDShapesinfining barcha a'zolari o'z ichiga olgan holda to'rtburchak kvadrat yoki yo'qligini aniqlash uchun IsSquare()metodi va shuningdek, to'rtburchak maydoni hisoblash uchun Area() metodlari qo'shiladi.
2. Sinf a'zolariga kirish va meros
Sinf a'zolariga kirish va meros
Oldingi mavzularda aytib o'tilganidek, sinf a'zolaridan ko'pincha ruxsatsiz yoki noqonuniy foydalanishni oldini olish uchun yopiq deb e'lon qilinadi. Ammo sinfning merosi cheklovlarni bekor qilmaydi, yopiq sinf a'zolariga kirishga ruxsat berilmagan. Shuning uchun, agar uning asosiy sinfining barcha a'zolari natijaviy sinfiga kirsa, asosiy sinfning a'zolari yopiq bo`lsa natijaviy sinfga ham ularga kirishga ruxsat yo`q. Shunday qilib, agar TwoDShapesinfining o'zgaruvchilari yopiq qilingan bo'lsa, ular quyida ko'rsatilgandekTrianglesinfda mavjud bo'lmaydi. // Sinfning yopiq a'zolariga kirish meros qilib berilmaydi. // Ushbu kod namunasi kompilyatsiya qilinmaydi. using System; // Ikki o'lchovli ob'ektlar uchun sinf. class TwoDShape { double Width; // endi bu yopiq o'zgaruvchidir double Height; // endi bu yopiq o'zgaruvchidir