Grupa Pitanja 2 Flashcards
Opišite ulogu klase Math u Java programima? Da li se kreira Math objekat za pozive metoda?
Klasa Math sadrži metode za matematičke operacije (koren, stepenovanje, brojevi Pi i e i mnoge druge). Klasa Mathsadrži statičke metode, pa nije potreban objekat za njihovo pozivanje.
Pokažite polimorfizam na primeru metoda klase Math.
U zavisnosti od tipa parametara u pozivu, neki metodi klase Math vraćaju rešenja različitog tipa.
Math.min(1, 5) vraća (int) 1
Math.min(0.8, 3.5) vraća (double) 0.8
Math.min(1.2F, 3.5F) vraća (float) 1.2
Objasnite redosled izvršavanja matematičkih operacija u Java programima.
Zavisi od vrste operacija. Prvo se rade množenje i deljenje, pa sabiranje i oduzimanje. Poštuju se zagrade. Pravila su kao u matematici.
Objasnite eksplicitnu i implicitnu konverziju primitivnih tipova podataka.
Implicitna konverzija - Java sama konvertuje podatke kad je to neophodno
Eksplicitna konverzija - korisnik konvertuje podatke kada mu je to potrebno
int broj = Integer.parseInt(string);
Integer.toString(broj);
Kako se učitavaju stringovi sa tastature?
Korišćenjem klase Scanner
String imeStringa = imeSkenera.next();
ili
String imeStringa = imeSkenera.nextLine();
Objasnite formatiranje izlaza primenom naredbe printf().
Metoda printf() omogućuje prikaz rezultata u definisanom obliku. Koristimo %format (f za float, c za char).
Koje tipove petlji poznajete u Java jeziku? Napišite ih u opštem obliku. Pokažite jedan jednostavan Java primer urađen primenom različitih vrsta petlji.
While, do-while, for i for each.
while(uslov) {
telo petlje; }
do {
telo petlje; }
while(uslov);
for(početna vrednost; uslov; korak) {
telo petlje; }
for(int broj : imeNiza) {
telo petlje; }
Primer: štampaj brojeve od 0 do 3
Napravite razliku između while i do-while petlje. Pokažite na primeru.
While petlja prvo proverava uslov pa ulazi u petlju. Do-while petlja prvo izvršava telo petlje jednom pa proverava uslov. Ovo znači da se telo do-while petlje izvršava bar jednom, a telo while petlje ne mora da se izvrši.
Primer:
int x = 3;
while(x > 4)
sout(“Test”);
ne štampa test jer ne ulazi u petlju
do
sout(“Test”);
while(x>4);
štampa prvo Test pa tek onda proverava
Po čemu se razlikuju for i for-each petlja?
For each se koristi za prolaženje kroz nizove. Za razliku od for petlje, for each ne gleda koliko puta treba da izvrši nešto već izvršava isto nad svim članovima niza
Pokažite na primeru i objasnite primenu ugnježdenih petlji.
Primer:
for(int i = 0; i < a.length; i++)
for(int j = 0; j < a[i].lenght; j++)
a[i][j] = imeSkenera.nextInt();
Pošto se unutrašnja petlja izvršava cela pre nego što se krene na sledeću iteraciju spoljne petlje, ugnježdene petlje (petlje u petlji) se koriste kad nam je potrebno da se neka petlja ponovi više puta. To je posebno korisno kod rada sa višedimenzionalnim nizovima.
Šta su metode? Kako se definišu metode? Kako se pozivaju metode?
Metode su skupovi naredbi koje zajedno obavljaju istu funkciju. Metode se definišu imenom, parametrom, tipom povratne vrednosti i telom metode. Metode mogu da se pozivaju preko klase
imeKlase.imeMetode();
ili preko objekta
imeObjekta.imeMetode();
Šta su modifikatori pristupa? Objasnite ih pojedinačno.
Modifikatori pristupa određuju gde u programu možemo da vidimo neki objekat ili metod.
- public - vidi se u celom programu
- private - vidi se samo u svojoj klasi
- protected - vidi se u klasi i podklasama
- default - vidi se samo u svom paketu
Na osnovu povratnog tipa kako delimo metode?
Funkcije - metode koje vraćaju vrednost (int, double, String…)
Procedure - metode koje ne vraćaju vrednost (void)
Na osnovu načina pozivanja kako delimo metode?
Klasne (statičke) metode koje se pozivaju preko klase, i ojektne metode koje se pozivaju preko objekta.
Navedite prednosti primene metoda u programima.
Uredniji i kraći kod. Mogućnost korišćenja istog koda više puta. Veća čitljivost programa.