1 / 26

proleće/leto 2008

Programski jezici. proleće/leto 2008. Stvaranje objekata klase. Primer: Č lan P orodice sin = new Č lan P orodice ( " Nikola " ,20); Č lan P orodice otac = new Č lan P orodice ( " Petar " ,52);. sin. prezime. “Smorić”. verzija(). otac. prikaži. prikaži. ime. ime. “Petar”.

Download Presentation

proleće/leto 2008

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Programski jezici proleće/leto 2008

  2. Stvaranje objekata klase • Primer: ČlanPorodice sin = new ČlanPorodice("Nikola",20); ČlanPorodice otac = new ČlanPorodice("Petar",52); Programski jezici

  3. sin prezime “Smorić” verzija() otac prikaži prikaži ime ime “Petar” “Nikola” uzrast uzrast 52 20 Stvaranje objekata klase Programski jezici

  4. Korišćenje polja i metoda • Objektna i klasna polja (kao i metodi) se koriste pomoću tačka-notacije • Ispred imena polja se navodi • Ime klase za klasna polja • Ime objektne promenljive konkretnog objekta za objektna polja Programski jezici

  5. Korišćenje polja i metoda • Primer: ČlanPorodice sin = new ČlanPorodice("Nikola",20); ČlanPorodice otac = new ČlanPorodice("Petar",52); System.out.println(ČlanPorodice.prezime); otac.uzrast = 50; System.out.println(sin.ime); ČlanPorodice.verzija(...); otac.prikaži(...); sin.prikaži(...); Programski jezici

  6. Nadjačavanje metoda u izvedenim klasama • Izvedena klasa nasleđuje sve metode (i polja) svoje bazne klase • Definisanje metoda u izvedenoj klasi koji ima isti potpis kao metod u baznoj klasi se naziva nadjačavanje (predefinisanje, overriding) metoda • Za objekte bazne i izvedene klase se ispravno pozivaju odgovarajući metodi sa istim imenom Programski jezici

  7. Službena reč super • super služi za pozivanje metoda iz bazne klase (koji je nadjačan) u izvedenoj klasi • super služi za pozivanje konstruktora bazne klase u konstruktoru izvedene klase • Primer: Deca.java Programski jezici

  8. Nizovi • Objekti koji predstavljaju nizove promenljivih istog tipa (primitivnog ili objektnog) • Pojedinačne promenljive niza se nazivaju elementi niza • Svaki element niza ima redni broj koji se naziva indeks elementa • Indeksi niza počinju od 0, ne od 1 Programski jezici

  9. 53 -7 563 37 ……. a[0] a[1] a[2] ……. a[99] Nizovi • Niz a od 100 celobrojnih elemenata (promenljivih): Programski jezici

  10. Nizovi • Definisanje nizova tip[] ime-niza; • Primer: int[] a; a = new int[100]; Programski jezici

  11. Nizovi • Skraćeni oblik: int[] a = new int[100]; float[] b = new float[20]; Auto[] parking = new Auto[5]; • Istovremena inicijalizacija: int[] dum = {31,28,31,30,31,30,31,31,30,31,30,31}; • Nizovi imaju fiksnu dužinu koja se ne može menjati Programski jezici

  12. Nizovi • Korišćenje elemenata nizova: ime-niza[indeks] indeks–celobrojni literal ili izraz Programski jezici

  13. Nizovi • Primer: public static void main(String[] args) { int[] brojač = new int[10]; String[]godDoba={“prolece”,“leto”,“jesen”,“zima”}; ... brojač[5] = 2*i+1; brojač[10] = 17; //greška int x = brojač[i+j]; String s = godDoba[3]; ... } Programski jezici

  14. Nizovi • Svaki niz ima definisano konstantno polje length koje sadrži dužinu niza (broj elemenata) • Primer: int[] brojač = new int[10]; String[]godDoba={“prolece”,“leto”,“jesen”,“zima”}; ... System.out.println(brojač.length); //10 System.out.println(godDoba.length); //4 Programski jezici

  15. Nizovi • Nizovi čiji su elementi primitivnih tipova int[] a = new int[5]; for (int i = 0; i < a.length; i++) a[i] = i; // int[] a = {1,2,3,4,5}; Programski jezici

  16. Nizovi • Stanje u memoriji posle inicijalizacije: Programski jezici

  17. Nizovi • Nizovi čiji su elementi objektnih tipova Auto[] parking = new Auto[5]; To je niz čiji elementi sadrže reference na objekte klase Auto: Programski jezici

  18. Nizovi • Niz referenci na objekte se mora “ručno” inicijalizovati: for (int i = 0; i < parking.length; i++) parking[i] = new Auto(); • Stanje u memoriji posle inicijalizacije: Programski jezici

  19. 5 -7 1562 371 0 ……. a[0] a[1] a[2] ……. a[63] 1 -433 344 1 0 ……. a[0] a[1] a[2] ……. a[63] 2 3 -71 63 ……. 7 a[0] a[1] a[2] ……. a[63] Nizovi • Višedimenzionalni nizovi su nizovi nizova Programski jezici

  20. 5 -7 1562 371 ……. a[0][0] a[0][1] a[0][2] ……. a[0][63] -433 344 1 0 ……. a[1][0] a[1][1] a[1][2] ……. a[1][63] 3 -71 63 7 ……. a[2][0] a[2][1] a[2][2] ……. a[2][63] Nizovi • Dvodimenzionalni niz Programski jezici

  21. Nizovi • Primeri: int[][] a = new int[3][64]; double[][]temp = new double[10][365]; Zgrada[][] blok = new Zgrada[4][5]; Programski jezici

  22. Nizovi • Elementi višedimenzionalnih nizova se koriste preko svojih indeksa (kao i kod jednodimenzionalnih nizova ) • Primeri: a[0][12] = 17; System.out.println(temp[i][j]); Zgrada[1][3] = new Zgrada(); Programski jezici

  23. Stringovi • Nizovi znakova između " i " • Stringovi nisu primitivne vrednosti, već objekti klase String • Primeri: String s = "Ovo je neki tekst"; String s = new String("Ovo je neki tekst"); String t = ""; //prazan string String t = new String(); //prazan string String a = null; String[] boje={"crvena","plava","zelena","zuta"}; Programski jezici

  24. Stringovi • Operator + za spajanje stringova • Primeri: String s = "Ovo je cas " + "iz Jave"; String s1 = "Ovo je cas "; String s2 = "iz Jave"; s1+= s2; //s1 = s1 + s2 int x = 23; System.out.println("Vrednost x je: " + x); //automatski 23 → "23", pa spajanje stringova Programski jezici

  25. Stringovi • Metod equals za poređenje da li dva stringa imaju isti sadržaj: s1.equals(s2) • Primeri: String s1="Zdravo"; String s1=new String("Zdravo"); String s2="Zdravo"; String s2=new String("Zdravo");//novi string if(s1 == s2) //true if(s1 == s2); //false if(s1.equals(s2)) //true if(s1.equals(s2)) //true Programski jezici

  26. Stringovi • Ostali metodi klase String Programski jezici

More Related