Mavzu. Standart algoritmlar va iteratorlari mavzu. Konteynerlar



Yüklə 27,47 Kb.
səhifə1/3
tarix17.05.2023
ölçüsü27,47 Kb.
#115475
  1   2   3
Ma\'ruza-18

  1. mavzu. Standart algoritmlar va iteratorlari.

  2. mavzu. Konteynerlar (Kolleksiyalar).


Reja:
  1. Konteynerlar ya’ni iteratorlar

  2. Interfeyslar



Interfeyslar


Java-da abstraktsiyaga erishishning yana bir yo'li interfeyslardir.
An interfacebutunlay " mavhum sinf " bo'lib, u bo'sh jismlar bilan bog'liq usullarni guruhlash uchun ishlatiladi:

Misol


// interface
interface Animal {
public void animalSound(); // interface method (does not have a body)
public void run(); // interface method (does not have a body)
}
Interfeys usullariga kirish uchun interfeys kalit so'zi implements (o'rniga extends) bilan boshqa sinf tomonidan "amalga oshirilgan" bo'lishi kerak (meroslangan kabi). Interfeys usulining asosiy qismi "amalga oshirish" klassi tomonidan taqdim etiladi:

Misol


// Interface
interface Animal {
public void animalSound(); // interface method (does not have a body)
public void sleep(); // interface method (does not have a body)
}

// Pig "implements" the Animal interface


class Pig implements Animal {
public void animalSound() {
// The body of animalSound() is provided here
System.out.println("The pig says: wee wee");
}
public void sleep() {
// The body of sleep() is provided here
System.out.println("Zzz");
}
}

class Main {


public static void main(String[] args) {
Pig myPig = new Pig(); // Create a Pig object
myPig.animalSound();
myPig.sleep();
}
}

Interfeyslar haqida eslatmalar:


  • Mavhum sinflar singari , interfeyslarni ob'ektlar yaratish uchun ishlatib bo'lmaydi (yuqoridagi misolda MyMainClassda "Hayvon" ob'ektini yaratish mumkin emas)

  • Interfeys usullari tanasiga ega emas - tanasi "amalga oshirish" klassi tomonidan taqdim etiladi

  • Interfeysni amalga oshirishda siz uning barcha usullarini bekor qilishingiz kerak

  • Interfeys usullari sukut bo'yicha abstractva public

  • Interfeys atributlari sukut bo'yicha public, staticvafinal

  • Interfeys konstruktorni o'z ichiga olmaydi (chunki uni ob'ektlar yaratish uchun ishlatib bo'lmaydi)

Nima uchun va qachon interfeyslardan foydalanish kerak?


1) Xavfsizlikka erishish uchun - ba'zi tafsilotlarni yashirish va faqat ob'ektning (interfeysning) muhim tafsilotlarini ko'rsatish.
2) Java "bir nechta merosni" qo'llab-quvvatlamaydi (sinf faqat bitta supersinfdan meros bo'lishi mumkin). Biroq, bunga interfeyslar yordamida erishish mumkin, chunki sinf bir nechta interfeyslarni amalga oshirishi mumkin . Eslatma: Bir nechta interfeyslarni amalga oshirish uchun ularni vergul bilan ajrating (quyidagi misolga qarang).

Yüklə 27,47 Kb.

Dostları ilə paylaş:
  1   2   3




Verilənlər bazası müəlliflik hüququ ilə müdafiə olunur ©azkurs.org 2024
rəhbərliyinə müraciət

gir | qeydiyyatdan keç
    Ana səhifə


yükləyin