Professional Documents
Culture Documents
6. (8)– Osnovna klasa koja nema nijedan konkretan objekat, vec samo predstavlja
generalizaciju izvedenih klasa
-Moze da sadrzi apstraktne funkcije(samo su deklarisane, ne implementirane)
-Ne mora da ima apstraktne metode!
7. (9)– Predstavlja spisak metoda i atributa koja klasa koja implementira interfejs mora
imati
- Interfejs nije klasa!(Ne nasledjuje se, vec implementira)
- Jedan interfejs moze naslediti vise njih
- Jedna klasa moze implementirati vise njih
- U javi 8 su dodali lambda expressions, koja nam olaksavaju pisanje koda
(omogucava korisnicima kodiranje lokalne funkcije kao argumente metoda)
14. (18)- Super poziva nasledjene atribute iz roditeljske klase u konstruktoru klase deteta
19. (23)- U javi je prenos iskljucivo po vrednosti; prave se kopije parametara koji se
prosledjuju metodi
20. (24)- /
21. (25)- Overloading je ako klasa ima vise metoda istog imena ali sa razlicitim
parametrima
25. (29)- Signaliziraju gresku ili dogadjaj koju bi trebalo da proverimo I dele se na error I
exception
- Error prezentuje sistemske greske koje se retko desavaju, a exception nastaje
usled pisanja loseg koda(npr deljenje sa nulom ili radnja sa objektom vrednosti
null)
- Mozemo ubaciti kod koji rukuje exceptionima
26. (30)- JVM izbacuje error koji prezentuje sistemske greske koje se retko desavaju
- Error ima 3 direktne potklase
- ThreadDeath ~ izbacuje se kada se nit koja se izvrsava namerno stopira
- LinkageError ~ ozbiljni problemi sa klasama u nasem programu
- VirtualMachineError ~ 4 potklase izuzetaka koji se izbacuju kada se desi pad JVM
27. (31)- /
28. (32)- Throw ~ Izbacujemo izuzetak iz catch bloka koji je catch blok uhvatio
31. (35)- Alternativa za konkatenaciju omogucava kreiranje teksta koji moze da se prosiri
33. (37, 38) – Binarni fajlovi sluze za cuvanje podataka u binarnom obliku
34. (39) Klasa file omogucava apstraktni pogled ka datotekama, sluzi za manipulaciju
datoteka.
35. (40) Klasa files od verzije 1.7
-Omogucava nam citanje vise linija dokumenta metodom readAllLines
-Nije namenjena za velike fajlove
36. (41) Kad zelimo da citamo sve redove u jednoj operaciji, tamo gde ima smisla
37. (42) Input/Output stream su mehanizmi koji omugucavaju unificiran prisput
podacima.
-Input ~ ulaz
-Output ~ izlaz
-Kod tekstualnih tokova se koriste BufferedReader i Writer
38. (43) Output stream se oslanja na tokove koji prenose bajtove, a Writer na tokove koji
prenose karaktere.
39. (44) Lak pristup i sortiranje, podaci se lociraju preko indexa, mana je ogranicenost
niza.
40. (45) Jagged nizovi predstavljaju nizove nizova, oni su dvodimenzionalni, svaki
element je tipa array.
41. (46) Kolekcija je objekat koji sadrzi grupu objekata i tretira se kao celina, operacije
sluze za manipulaciju kolekcijama. Interface im definise zajednicko ponasanje.
42. (47) Prvo se proverava da li je prazna, ako kolekcija ima vrednosti one se uzimaju,
dodaju se nove i uklanjaju.
43. (48) Mapu definisemo kao key + value (key je jedinstven) brz pristup elementima,
uklanjanje i dodavanje.
Set ~ kolekcija koja ne dozvoljava duplikate
45. (50) Pomocu iteratora se mozemo pomerati kroz kolekciju element po element.
Oznacava poziciju u kolekciji
46. (51) Generics je dodat verzijom 1.5, omogucava klasi i njenim metodama da rade sa
razlicitim tipovima podataka.
47. (52) Mapa ~ mapira jedinstvenim kljucevima, HashMap ~ implementira Map
interface i dozvoljava null element, nije uredjena ni sortirana.
48. (53) ArrayList ~ automatski menja velicinu, implementira se kao niz, dozvoljava read
null elementa; dodavanje i brisanje za odredjeni niz su neefikasni.
Vector ~ Slican je kao ArrayList ali su metode sinhronizovane, ako imamo vise
threadova koji pristupaju vektoru ne mogu da ga menjaju
49. (54) LinkedList ~ spregnuta lista, svaki element sadrzi pokazivace na sledeci,
AbstractSequentialList.
50. (57) Vraca null, vrednost specifiranog kljuca.
51. (58) Immutable definise vrednost objekkta kad se kreira, ne postoje metode i nacini
na koji moze da se menja.
52. (59) Tako sto cemo staviti final ispred naziva klase, tatributi moraju biti private i ne
kreirati metode.
53. (60) JVM ~ Java Virtual Machine, obezbedjuje runtime okruzenje, raspolozivu za
hardverske i softverske platforme,
JRE ~ Java Runtime Environment, sadrzi skup biblioteka, fizicki postoji
JDK ~ Java Development Kit, sadrzi JRE + razvojne alate
Pozitivna stvar kod jave je sto ne zavisi od platforme
54. (61) Ako je podešen CLASSPATH, onda JRE traži u aktuelnom direktorijumu ako
je to korisnik eksplicitno izrazio, ispitijući samo lokacije zadate u podešavanju
promenljive. Ako prethodno instalirani programi su umesto korisnika postavili
promenljivu CLASSPATH, onda korisnik ručno dodaje aktuelni direktorijum u
putanju za pretragu. U CLASSPATH tačka predstavlja trenutni radni
direktorijum
55. (62) Stack ~ isto kao na algoritmima Heap se koristi za kreiranje objekata i alocira se
memorija dok se referenca cuva na stacku. Heap se deli izmedju svih niti JVM, dok se
stek odnosi samo na jednu. Stek skladisti promenljive dok heap skladisti objekte.
56. (65) Garbage collector radi kao proces u pozadini, ali ga mozemo i mi pozvati
komandom System.gc(); ali ce on sam odluciti da li treba da oslobadja memoriju, to
je samo sugestija da otpocne ciscenje. I pored njega moze doci do greske
OutOfMemory