Abstrakt sinflar Abstrakt sinf tushunchasi. Abstrakt sinfdan foydalanish zarurati
Download 0.54 Mb.
|
8-Abstrakt sinflar
- Bu sahifa navigatsiya:
- Abstrakt usullar
Abstrakt sinf a'zolari
Odatdagi xossalar va usullardan tashqari, abstrakt sinf abstrakt kalit so'z yordamida aniqlangan va hech qanday funksionallikka ega bo'lmagan abstrakt sinf a'zolariga ega bo'lishi mumkin. Xususan, abstrakt bo'lishi mumkin: Usullari Xususiyatlari Indekslovchi(Indeksator)lar Xodisalar Abstrakt sinf a'zolari private modifikatoriga ega bo'lmasligi kerak. Bunday holda, xosila sinf asosiy abstrakt sinfdagi barcha abstrakt usullar va xususiyatlarni bekor qilishi va amalga oshirishi kerak. Xosila sinfda bekor qilinganda, bunday usul yoki xususiyat override modifikatori bilan ham e'lon qilinadi (odatiy bekor qiluvchi virtual usullar va xususiyatlar kabi). Shuni ham ta'kidlash kerakki, agar sinfda kamida bitta abstrakt usul (yoki abstrakt xususiyat, indeksator, hodisa) bo'lsa, u holda bu sinf abstrakt sifatida belgilanishi kerak. Abstrakt a'zolar, virtual kabi, polimorf interfeysning bir qismidir. Ammo virtual usullarda, biz merosxo'r sinf amalga oshirishni meros qilib oladi desak, abstrakt usullarda ushbu abstrakt usullar bilan ifodalangan interfeys meros qilib olinadi. Abstrakt usullar Masalan, yuqoridagi misolda D_isplay usulini abstrakt qilib ko'rsatamiz: abstract class Person { public string Name { get; set; } public Person(string name) { Name = name; } public abstract void Display(); } class Client : Person { public int Sum { get; set; } // hisob miqdori public Client(string name, int sum) : base(name) { Sum = sum; } public override void Display() { Console.WriteLine($"{Name}ning {Sum} uchun hisobiga ega"); } } class Employee : Person { public string Position { get; set; } // lavozim public Employee(string name, string position) : base(name) { Position = position; } public override void Display() { Console.WriteLine($"{Position} {Name}"); } } Download 0.54 Mb. Do'stlaringiz bilan baham: |
Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling
ma'muriyatiga murojaat qiling