Grupa Pitanja 5 Flashcards
Eksplicitna konverzija tipa objekta - objasnite.
Referenca objekra može da se konvertuje u drugu referencu objekta (casting). Primer:
Osoba b = (Osoba) a;
Konverzija primitivnih tipova i konverzija tipova objekata - objasnite.
Casting može da se radi kada je izvorni objekat primerak ciljne klase.
Primer za primitivni:
int broj = 50;
byte noviBroj = (byte) broj;
Primer za objekat:
Objekat o = new Krug();
Krug k1 = (Krug) o;
Upoređivanje dva objekata metodom equals() - objasnite.
Metoda equals() proverava da li je sadržaj dva objekta jednak.
objekat1.equals(objekat2);
što radi
return (this == obj);
Za rad sa Stringovima postoji equalsIgnoreCase, koji zanemaruje da li su velika ili mala slova kada proverava dali su dva Stringa sadržajno jednaka.
Memorisanje objekata primenom klase ArrayList - objasnite.
Klasa ArrayList se često koristi za čuvanje objekata. Kada se kreira lista ona je fiksna i ne može se povećati ili smanjiti, a taj broj nije ograničen.
Lista se pravi sa
ArrayList ime =
new ArrayList<>();
Navedite i objasnite preporuke za projektovanje klasa.
- kohezija - jasno predstavlja samo jedan identitet, sve operacije imaju smisla zajedno
- konzistentnost - standardni Java stil i konvencija naziva
- učaurenje - modifikator private
- jasnoća - jasan i razumljiv interface
Šta je izuzetak? Navedite neke najpoznatije izuzetke?
Izuzetak je objekat koji predstavlja neku grešku ili uslov koji sprečava normalan rad programa. ArithmeticException InputMismatch IOException IndexOutOfBoundsException
Koje vrste izuzetaka poznajete?
- sistemske greške - klasa Error, unutrašnje greške sistema
- izuzeci - klasa Exception, greške napravljene programom ili spoljnim okolnostima, hvataju se i rešavaju u programu
- izuzeci u fazi izvršenja - klasa RuntimeException, greške programiranja, deljenje s nulom, pogrešan tip podatka
Objasnite izbacivanje i obradu izuzetaka.
Izuzeci se izbacuju iz metoda, korišćenjem ključne reči throw. Onaj ko poziva taj metod može da uhvati izuzetak korišćenjem catch bloka i da nešto uradi sa njim.
Kada je potrebno upotrebiti izuzetke?
Kako izuzeci usporavaju program i troše resurse, moramo biti pažljivi gde ih koristimo. Potrebno je upotrebiti izuzetke svuda gde zbog neke greške (deljenje nulom, pogrešan tip podatka, nepostojeći član niza…) može doći do pucanja programa.
Kreiranje vlastitih klasa izuzetaka.
Pravimo našu klasu koja nasleđuje neki postojeći izuzetak, koja ima konstruktore i ono što izuzetak vraća.
Olančani izuzeci - objasnite.
Olančavanje izuzetaka se javlja kada se istovremeno više izuzetaka aktivno.
Razlika između throw i throws - objasnite.
Klauzule try, catch i finally - objasnite upotrebu.
Try - deo koda gde može da se javi greška
Catch - deo koda gde se obrađuje greška, poziva se samo ako se javila greška u try
Finally - uvek se izvršava, bez obzira na try i catch
Šta su datoteke?
Datoteka je skup podataka na jednoj logičkoj adresi.
Ulaz i izlaz tekstualnih datoteka - objasnite.
Za upisivanje tekstualnih podataka u neku datoteku koristimo klasu PrintWriter.
Za čitanje tekstualnih podataka iz datoteke koristimo klasu Scanner.
Scanner ime =
new Scanner(newFile(imeFajla));