Java
Polimarfizm
[yunoncha poly - ko'p va morphe - ko'rinish, shakl, tasvir]
Polimorfizm
-algoritmning bir nechta ilovalari mavjud
-amalga oshirish tanlovi ob'ekt turiga va
Polimorfizm
parametrlar turiga qarab amalga oshiriladi
Amalga oshirish mexanizmlari:
-Usulning yuklanishi
-Usulni bekor qilish
Car auto1 = new Car()
Car auto2 = new Car()
Car auto3 = new Car()
Yana bir bor sinf haqida
- Sinf (sinf) o'xshash ob'ektlar to'plamining holati va
xatti-harakatlarining belgilarini tavsiflaydi
- Class - foydalanuvchi tomonidan belgilangan ma'lumotlar turi
class Car {
String name;
int speed;
int fuel;
void setName(String newName) {…}
void speedUp(int delta) {…}
void fillFuel(int delta) {…}
void printCurrentState() {…}
Abstrakt sinf
yaratadigan sinflar uchun umumiy xatti-harakatni belgilaydi
bolalar sinflari mavjudligini taxmin qiladi
mavhum spetsifikatsiya bilan e'lon qilingan
ob'ektlarga ega bo'lolmaydi
mavhum usullarni o'z ichiga olishi yoki bo'lmasligi mumkin
Sinf mavhum deb e'lon qilinishi kerak, agar:
sinf mavhum usullarni o'z ichiga oladi
sinf mavhum sinfdan meros oladi, lekin mavhum
1.
2.
usullarni amalga oshirmaydi
3. sinf interfeysni amalga oshiradi, lekin interfeysning
barcha usullarini amalga oshirmaydi
Abstrakt usul
amalga oshirishga ega emas
mavhum spetsifikatsiya bilan e'lon qilingan
bolalar sinflarida bekor qilingan
Misol:
1-VAZIFA
Mavhum Transport sinfini va ikkita voris
sinfni yarating.
Transportda mavhum usul - beep()
Interfeys
Ob'ektlarning mumkin bo'lgan xatti-harakatlarini belgilaydi (ma'lum turdagi
turlarni tavsiflaydi va faqat operatsiyalar deklaratsiyasini o'z ichiga oladi)
- Interfeys - bu amalga oshirilmaydigan usullar to'plami
-
Sinfni e'lon qilishda siz qaysi interfeyslarni qo'llab-quvvatlashini belgilashingiz mumkin.
Interfeys deklaratsiyasi
Shular bor:
- ommaviy (ommaviy)
- ommaviy bo'lmagan - paket ichida mavjud
Barcha elementlar ommaviydir:
-
barcha interfeys maydonlari statik va yakuniydir
O'z ichiga olishi mumkin:
-
mavhum usullar (amalga oshirishsiz
usullar)
-
statik konstantalar
-
(Java SE 8) statik usullar
-
(Java SE 8) amalga oshirish bilan standart usullar
Ism
-
Interfeys nomi bir yoki bir nechta ketma-ket
so'zlardan iborat.
-
Har bir so'zning birinchi harfi katta, qolganlari
kichik harflar bilan yoziladi.
-
Interfeys nomi odatda "mumkin" bilan tugaydi
Interfeysni amalga oshirish
Sinfni e'lon qilishda siz qaysi interfeyslarni qo'llab-quvvatlashini belgilashingiz mumkin.
Interfeysni amalga oshiradigan sinf:
- o'z usullariga ega bo'lishi mumkin (interfeysda e'lon qilinmagan)
- o'z maydonlariga ega bo'lishi mumkin
- barcha interfeys usullarini amalga oshirishi yoki mavhum deb e'lon qilinishi kerak
Misol:
Thank you all
Do'stlaringiz bilan baham: |