19.Class metodlari Sinf - bu Object Pascalda maxsus turlar bo‘lib, o‘zida maydon, usullar va xossalarni mujassamlashtiradi.
Pascal sinfik tili dasturchiga o‘zining murakkab ma’lumotlar turlari - yozuvlar (records) kiritishga imkon beradi. Ob’ektli dasturlash konsepsiyasiga asoslangan C++ Bulider tili, sinflar kiritishga imkon beradi. Sinf murakkab struktura bo‘lib, ma’lumotlar ta’riflaridan tashqari, protsedura va funksiyalar ta’riflarini o‘z ichiga oladi.
Maydon - bu sinfga birlashtirilgan ma’lumotlardir. Sinfga qarashli maydonlar oddiy yozuv maydoni kabi bo‘lib, ularning farqi har xil turda bo‘lishidir. Masalan,
Type
TchildClass=Class
Fore: Integer;
Ftwo: String;
Fthree: Tobject;
End;
Maydonlarga murojaat qilish sinf xossalari va usullari yordamida amalga oshiriladi. Maydonga murojaat qilish uchun oldin sinf nomi yozilib, keyin ajratuvchi nuqta qo‘yilib maydon nomi yoziladi.
Maydon nomi unga mos xossa nomining birinchi harfi “F” bo‘lishi bilan farqlanadi.
C++ Bulider da qabul qilingan kelishuv bo‘yicha maydonlar nomlari f harfidan boshlanishi lozim.
Sinf ta’rifi dasturda turlar ta’rifi bulimiga joylashtiriladi (type).
Usullar. Sinfga birlashtirilgan protsedura va funksiyalarga usullar deyiladi
Sinf usullari (sinf ta’rifiga kiritilgan protsedura va funksiyalar) sinf ob’ektlari ustida amal bajaradi. Usul bajarilishi uchun ob’ekt nomi va nuktadan sung usul nomi ko‘rsatilishi lozim.
Sinfda aniqlangan usullarni statistik, virtual (Virtual), dinamik (Dynamic) yoki abstrakt turlarga bo‘lish mumkin. Agar usul turi ko‘rsatilmasa, u avtomatik ravishda statistik turni oladi
Sinf davomchisida ishlatiladigan usul uchun Override kalit so‘zi ko‘rsatilishi lozim.
Agar Tbase sinfida MyJoy usuli dinamik bo‘lsa, Virtual so‘zi Dynamic so‘ziga almashtiriladi. Ularning asosiy farqi murojaat qilinganda Virtual usul vaqt jihatdan ancha effektiv bo‘lsa, Dynamic usul esa operativ xotiradan ratsional foydalanish imkonini beradi.