Algoritmlash asoslari


Download 1.32 Mb.
bet11/16
Sana12.06.2020
Hajmi1.32 Mb.
#117719
1   ...   8   9   10   11   12   13   14   15   16
Bog'liq
Algoritmlash asoslari

interface Printable{

  • void print();

  • }

  • interface Showable{

  • void show();

  • }

  • class A implements Printable,Showable{

  • public void print(){System.out.println("Salom");}

  • public void show(){System.out.println("Hush kelibsiz");}

  • public static void main(String args[]){

  • A obj = new A();

  • obj.print();

  • obj.show();

  • }

  • }

  • Quyidagi misolda klass interfeysdan foydalanadi, interfeys esa boshqa interfeysdan nasl oladi:

  • interface Printable{

  • void print();

  • }

  • interface Showable extends Printable{

  • void show();

  • }

  • class A implements Showable{

  • public void print(){System.out.println("Salom");}

  • public void show(){System.out.println("Hush kelibsiz");}

  • public static void main(String args[]){

  • A obj = new A();

  • obj.print();

  • obj.show();

  • }

  • }

    Shunindek, bir interfeys tarkibida boshqa bir interfeys bo’lishi ham mumkin:

    Source code

       

    •     interface Xat {

    • void xatKeldi();

    • interface xatHabar{

    • void xatHabarKeldi();

    • }

    • }

    Abstrakt klass va interfeys o’rtasidagi farqlar

    Abstrakt klass

    Interfeys

    Abstrakt klassda abstrakt va

    abstrakt bo’lmagan funksiyalar bo’ladi

    Interfeysda faqat

    abstrakt funksiyalar bo’ladi

    Classlar faqat bitta abstrakt

    klassdan meros olishi mumkin

    Classlar bir nechta

    interfeyslardan meros olishi mumkin

    Abstrakt klasslarda final,

    non-final static va non-static bo’lgan

    o’zgaruvchilar bo’lishi mumkin

    Interfeysda esa faqat

    final va static o’zgaruvchilar bo’ladi

    Abstrakt klaslarda static

    funksiyalar, main funksiyalar va

    konstruktorlar

    yaratish mumkin

    Interfeysda esa static

    funksiyalar, main funksiyalar

    va konstruktorlar yaratib bo’lmaydi


    Interfeys va abstrakt klasslarga misol:

    Source code

       

    • //interface da 4ta method yaratilyapti

    • interface A {

    • void a(); abstract

    • void b();

    • void c();

    • void d();

    • }

    • // B abstrakt klassi yaratilyapti va A interfeysdan foydalanilyapti

    • abstract class B implements A{

    • public void c() {System.out.println("Men c man ");}

    • }

    • class M extends B{

    • public void a(){System.out.println("Men a man ");}

    • public void b(){System.out.println("Men d man ");}

    • public void d(){System.out.println("Men d man ");}

    • }

    • class Test5{

    • public static void main(String args[]){

    • A a=new M();

    • a.a();

    • a.b();

    • a.c();

    • a.d();

    • }}


    Natija :

    Men a man

    Men b man

    Men d man

    Men c man
    22-dars - Javada Collection (To’plam)

    Javada to'plamlar(collection'lar) framework bo'lib, u o'zida ob’yektlarni saqlaydi.

    To'plamlarda barcha jarayonlar ( saralash, qidirish, yozish, o'chirish va h.k lar)ni oson amalga oshirish mumkin.

    To'plamlar bir necha interface'lardan tashkil topgan. Ular ( Set, List, Queue, Deque etc.) va klass'lar (ArrayList, Vector, LinkedList, PriorityQueue, HashSet, LinkedHashSet, TreeSet va h.k).

    To'plamlar ob’yektning alohida ko'rinishi.

    To'plamlar frameworklar tuzilishi noma'lum bo'lgan ob’yekt guruhlarini o'zida yig'adi. To'plamlar ma'lumot yig'ishi bilan massivlarga o'xshab ketadi. Farqi massiv o'lchami statik To'plamlarniki esa dinamik, massiv bilan top'lamlarni qurilishi bir biridan tubdan faq qiladi va h.k.

    To’plamlarning tuzilish sxemasi:



    To'lamlar java.util paketida saqlanadi.

    List

    List dublikat(takrorlangan, aynan bir ob’yektni ikki marta qabul qilishi) elementlarni o'z ichiga olishi mumkin. Elementlar joylashtirilgan yoki ro'yxatda o'z holatiga ruxsat etilishi mumkin.

    Listdan implement qiladigan klasslar

    • ArrayList

    • LinkedList

    • Vektor

    Set

    Set ham To'plam, u o'zida dublikat elementlarni saqlamaydi. Set'dan asosiy 3 ta klass implement oladi ular: HashSet, TreeSet, va LinkedHashSet, HashSet elementlarni hashlab hash jadvaliga yig'adi. Treeset elementlarni daraxtsimon va saralangan holda saqlaydi.

    Setdan implement qiladigan klasslar

    • HashSet

    • LinkedHashSet

    • TreeSet

    Map

    Map key (kalit qiymati) ham value(kalitga mos qiymat)i ham ob’yekt bo'lgan collection'dir. U o'zida dublikat(takrorlangan) bo'lgan key'larni saqlamaydi. Map'dan 3 ta class implement oladi HashMap, TreeMap, va LinkedHashMap. HashMap : elementlarni hashlab yozadi, TreeMap : elementlarni qiymati(value) asosida saralab yozadi.

    Mapdan implement oladigan klasslar

    • HashMap

    • TreeMap

    • LinkedHashMap

    Iterator/ListIterator

    Iterator va ListIteratorlardan to'plamlarning elementlarini qaytarishda foydalaniladi



    To'lamlarninig ba'zi funksiyalari



    Funksiya nomlari

    Ta'rifi

    1

    public boolean add(Object element)

    To'plamga ma'lumot yozishda foydalanilari

    2

    public boolean addAll(Collection c)

    Belgilangan to'plarlarni yozishda ishlatiladi

    3

    public boolean remove(Object element)

    To'plamni elementini o'chirishda ishlatiladi

    4

    public boolean removeAll(Collection c)

    Belgilangan to'plamlarni o'chirishda ishlatiladi

    5

    public boolean retainAll(Collection c)




    6

    public int size()

    To'plam elementlar sonini qaytaradi

    7

    public void clear()

    To'plamni elementlarini o'chiradi

    8

    public boolean contains(Object element)

    Element qidirishda ishlatiladi

    9

    public boolean containsAll(Collection c)

    Belgilangan to'plamlarni qidirishda ishlatiladi

    10

    public Iterator iterator()

    Iterator qaytaradi

    11

    public Object[] toArray()

    To'plamni massivga o'giradi

    12

    public boolean isEmpty()

    To'plamni bo'sh yoki bo'sh emasligiga tekshiradi

    13

    public boolean equals(Object element)

    Ikkita to'plamni bir-biri bilan solishtiradi

    14

    public int hashCode()

    To'plamni hash code dagi raqamini qaytaradi



    Download 1.32 Mb.

    Do'stlaringiz bilan baham:
  • 1   ...   8   9   10   11   12   13   14   15   16




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