Guruh talabasi Majidov Husanboyning mqudv


Polimorfizm. Method overloading nima va unga misol keltiring


Download 473.6 Kb.
bet3/6
Sana14.12.2020
Hajmi473.6 Kb.
#166422
1   2   3   4   5   6
Bog'liq
Android Studio 1-oraliq Nazorat


Polimorfizm. Method overloading nima va unga misol keltiring


Polimorfizm orqali bir jarayonni turli yo'llar bilan tashkillashtirishimiz mumkin. Polimorfizm so'zi yunoncha ikki so'zning birikmasidan tashkil otpgan «poly» — Ko'p va «morphs» — formalar. Polimorfizm ham ko'p formalar degan ma'noni anglatadi.

Javada polimorfizmni ikki turi mavjud: programma kompilatsiya bo'layotgan vaqtda sodir bo'ladigan polimorfizm (compile time polymorphism, static polymorphism) va programma ishlab turgan vaqtda sodir bo'ladigan polimorfizm (runtime polymorphism, dynamic polymorphism). Javada polimorfizm metodlarni qayta yuklash (overload) va qayta yozish (override) bilan amalga oshiriladi.

Compile time polimorfizm

Agar metodni qayta yuklansa (overload) bu — compile time polimorfizmga misol bo'ladi. Ya'ni, agar class ichida bir xil nomli, ammo argumentlarning soni yoki argumentlarning ma'lumot tipi (yoki ikkalasi) farq qiladigan metodlar mavjud bo'lsa, bu compile time polimorfizm bo'ladi. Quyidagi misolga qarang:

class X

{

void metodA(int num)

{

System.out.println ("metodA:" + num);



void metodA(int num1, int num2)

{

System.out.println ("metodA:" + num1 + "," + num2);



}

double metodA(double num) {

System.out.println("metodA:" + num);



return num;

}}

class Y

{

public static void main (String args [])

{

X Obj = new X();



double natija;

Obj.metodA(20);

Obj.metodA(20, 30);

result = Obj.metodA(5.5);

System.out.println("Javob:" + natija);

}}

Natija:

metodA:20

metodA:20,30

metodA:5.5

Javob:5.5

Yuqoridagi misolda, X classning 3 ta metodi bor. Uchala metodlarning xam nomlari bir xil — metodA, ammo metodlarning argumentlarida farqlar mavjud. Kompilyatsiya vaqtida kompilyator metodga yuborilayotgan argumentlarning soni va ma'lumot tipiga qarab kerakli metodni tanlab oladi. Qaysi metodlarni chaqirish kompilatsiya vaqtida aniqlanishi tufayli ham bu polimorfizm turi Compile time polimorfizm deb nomlanadi.

Compile time polimorfizmni yana Static binding, Early binding deb ham ataladi.



Download 473.6 Kb.

Do'stlaringiz bilan baham:
1   2   3   4   5   6




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling