Abstrakt sinflar tashkil etish va ulardan foydalanish usullari Abstract


Download 16.03 Kb.
Sana05.01.2022
Hajmi16.03 Kb.
#213516
Bog'liq
Abstrakt sinflar tashkil etish va ulardan foydalanish usullari


Abstrakt sinflar tashkil etish va ulardan foydalanish usullari

Abstract kalit so'zi bilan yaratilgan sinflar abstrakt sinflar deb nomlanadi. Abstract sinflar abstakt metodlar (tanasi yozilmagan metod) yoki abstrakt bo'lmagan metodlardan (tanasi yozilgan metod) tashkil topgan bo'ladi.

Abstrakt class quyidagicha e'lon qilinadi:



abstract class A{}

Tanasi (implementation) yozilmagana va abstract kalit so'zi bilan yaratilgan metod — abstrakt metod deyiladi.



abstract void funksiya(); // tanasi yo'q va asbtrakt

Abstrakt metodi bor bo'lgan abstrakt classga misol:



abstract class Motosikl{

abstract void run();

}


class Honda extends Motosikl{

void yurmoq(){System.out.println("Yurmoqda...");}

public static void main(String args[]){

Motosikl obj = new Honda();

obj.yurmoq();

}


}

Natija:


Yurmoqda...

Yuqoridagi misolda Honda classi bitta abstrakt metodi (yurmoq) bor bo'lgan Motosikl abstarkt classidan nasl olayapti va uning abstrakt classi tanasini realizatsiya qilayapti.

Amaliyotda abstrakt class bir nechta sinflar uchun ota class vazifasini bajaradi va abstrakt metodlar turli bola sinflarda turlicha realizatsiya qilinadi.

Shuningdek abstrakt class konstruktor, tanasi bor metod, ma'lumotlar va hattoki main() metodga ega bo'lishi mumkin. Quyidagi misolga qarang:



abstract class Motosikl{

Motosikl(){System.out.println("Motosikl yaratildi");}



abstract void yurmoq();

void tezlikOshirish(){System.out.println("tezlik oshirildi");}

}


class Honda extends Motosikl{

void yurmoq(){System.out.println("yurmoqda...");}

}

class MainClass{



public static void main(String args[]){

Motosiklobj = new Honda();

obj.yurmoq();

obj.tezlikOshirish();

}

}

Natija:



Motosikl yaratildi

yurmoqda...

tezlik oshirildi

Esda tuting: Agar class tarkibida bitta bo'lsa ham abstarkt metod mavjud bo'lsa, class ham abstract bo'lishi kerak.



Esda tuting: Agar biror class abstrakt classdan voris olsa uning barcha abstrakt metodlarini realizatsiya qilishi kerak yoki o'zi ham abstrakt class bo'lishi kerak.
Download 16.03 Kb.

Do'stlaringiz bilan baham:




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