Interfeyslar interface kalit so'z bilan e'lon qilinadi. Quyida interfeysni e'lon qilishning soddalashtirilgan shakli berilgan.
interface nom{
qaytariluvchi_tip metod1_nomi (parametrlar_ro_yxati) ;
qaytariluvchi_tip metod2_nomi (parametrlar_ro_yxati) ;
// ...
qaytariluvchi_tip metodN_nomi (parametrlar_ro_yxati) ;
}
nom — interfaysning aniq nomi. Interfeys metodlarini e'lon qilishda faqat ularning qaytariluvchi_tip va tuzilishi aniqlanadi. Ular asosan abstrakt metodlar hisoblanadi. Yuqorida aytib o'tilganidek, interfeysda hech qanday dastur mavjud emas. Shuning uchun barcha interfeys metodlari ushbu interfeysni o'z ichiga olgan har bir sinfda amalga oshirilishi kerak. Xuddi shuningdek interfeysda metodlar bevosita ochiq deb hisoblanadi, ularga ruxsatni aniq ko'rsatish shart emas.
Quyida raqamlar ketma-ketligi qatorini ishlab chiquvchi sinf uchun interfeys e'loni misol sifatida keltirilgan.
public interface ISeries {
int GetNext(); // quyidagi sonlarni ketma - ketlik bo'yicha qaytarish
void Reset(); // qayta ishga tushirish
void SetStart(int x); // boshlang'ich qiymatni belgilash
}
Ushbu interfeysga ISeries nomi beriladi. Interfeys nomidagi I old qo`shimchasini ko'rsatish shart emas, lekin interfeyslarni sinflardan ajratish uchun dasturlash amaliyotida bu holat odatiy holdir. ISeries interfeysi public deb e'lon qilinadi va shuning uchun har qanday dasturda har qanday sinfda amalga oshirilishi mumkin.
Bundan tashqari, interfeyslarda xususiyatlar, indeksatorlar va hodisalar ham ko'rsatilishi mumkin. Hodisalar haqida batafsil ma'lumot 15-bobda muhokama qilinadi va ushbu bo'lim metodlar, xususiyatlar va indeksatorlarga qaratiladi. Interfeyslar ma'lumotlar a'zolarini o'z ichiga olmaydi. Ular, shuningdek, konstruktorlar, destruktorlar yoki metod operatorlarini aniqlash mumkin emas. Bundan tashqari, interfeys a'zolarining hech biri statik deb e'lon qilinishi mumkin emas.
Do'stlaringiz bilan baham: |