Grupa Pitanja 5 Flashcards

1
Q

Eksplicitna konverzija tipa objekta - objasnite.

A

Referenca objekra može da se konvertuje u drugu referencu objekta (casting). Primer:
Osoba b = (Osoba) a;

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Konverzija primitivnih tipova i konverzija tipova objekata - objasnite.

A

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;

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Upoređivanje dva objekata metodom equals() - objasnite.

A

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.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Memorisanje objekata primenom klase ArrayList - objasnite.

A

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<>();

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Navedite i objasnite preporuke za projektovanje klasa.

A
  1. kohezija - jasno predstavlja samo jedan identitet, sve operacije imaju smisla zajedno
  2. konzistentnost - standardni Java stil i konvencija naziva
  3. učaurenje - modifikator private
  4. jasnoća - jasan i razumljiv interface
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Šta je izuzetak? Navedite neke najpoznatije izuzetke?

A
Izuzetak je objekat koji predstavlja neku grešku ili uslov koji sprečava normalan rad programa. 
ArithmeticException
InputMismatch
IOException
IndexOutOfBoundsException
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Koje vrste izuzetaka poznajete?

A
  1. sistemske greške - klasa Error, unutrašnje greške sistema
  2. izuzeci - klasa Exception, greške napravljene programom ili spoljnim okolnostima, hvataju se i rešavaju u programu
  3. izuzeci u fazi izvršenja - klasa RuntimeException, greške programiranja, deljenje s nulom, pogrešan tip podatka
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Objasnite izbacivanje i obradu izuzetaka.

A

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.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Kada je potrebno upotrebiti izuzetke?

A

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.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Kreiranje vlastitih klasa izuzetaka.

A

Pravimo našu klasu koja nasleđuje neki postojeći izuzetak, koja ima konstruktore i ono što izuzetak vraća.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Olančani izuzeci - objasnite.

A

Olančavanje izuzetaka se javlja kada se istovremeno više izuzetaka aktivno.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Razlika između throw i throws - objasnite.

A
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Klauzule try, catch i finally - objasnite upotrebu.

A

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

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Šta su datoteke?

A

Datoteka je skup podataka na jednoj logičkoj adresi.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Ulaz i izlaz tekstualnih datoteka - objasnite.

A

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));

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Čitanje podataka sa veba - objasnite

A
Za čitanje podataka sa interneta koristi se klasa Scanner. Da čitamo podatke s veba, neophodno je da znamo URL adresu podataka. 
Scanner input = 
new Scanner(url.openStream());
Pre toga moramo da kreiramo URL objekat
public URL(String spec) throws MalformedURLException
17
Q

Čuvanje binarnih podataka u datotekama - objasnite.

A

Binarne datoteke su nezavisne od platforme i prenosive. Ulazni objekat učitava tok podataka sa binarne datoteke, a izlazni objekat piše tok podataka na binarnu datoteku.

18
Q

Čuvanje objekata u datotekama - objasnite.

A

Za čitanje / pisanje objekata u fajl koriste se klase ObjectInputStream i ObjectOutputStream koje nam omogućavaju operacije sa objektima.

19
Q

Operacija čitanja i pisanja u datotekama sa slučajnim pristupom – objasnite.

A

Klasa RandomAccessFile omogućava da se datoteka čita ili da se u nju upisuje na slučajno određenim lokacijama. Operacije čitanja/pisanja se izvršavaju na lokaciji pointera (pokazivača) datoteke. Kada čitamo/pišemo pokazivač se pomera napred do sledećeg podatka