III Grupa Flashcards
- Cemu sluze dvodimenzionalni nizovi?
Dvodimenzionalni nizovi sluze za kreiranje neke matrice ili tabele.
- Kako se definise dvodimenzionalni niz?
→ Dvodimenzionalni nizovi se popularno nazivaju i matrice ili tabele. To je zato sto imaju dve dimenzije - sirinu i visinu, za razliku od jednodimenzionog niza, koji ima samo sirinu. On se definise slicno kao i jednodimenzionalni niz, medjutim umesto jedne otvorene i zatvorene zagrade koriste se dve [][] koje takodje idu uz tip podataka.
Na primer:
tip[][] imeNiza = new tip[brojElemenata][brojElemenata];
- Sta je matrica?
Matrica je drugi naziv za dvodimenzionalni niz. Njih cine vrste i kolone sa elementima u njima.
- Deklaracija i inicijalizacija dvodimenzionalnog niza - objasnite!!!
→ Dvodimenzionalni nizovi su objekti, dok je promenljiva referenca na te objekte. Oni se deklarisu slicno kao i jednodimenzioni
nizovi samo sto umesto jedne zagrade oni imaju dve
int[][] niz = new int[][];
→ Oni mogu biti fiksirani gde cemo rucno uneti sve vrednosti matrice. int[][] niz = { {1, 2, 3}, {4, 5, 6}, {7, 8, 9} };
→ Ili im se mogu prosledjivati vrednosti. Recimo da napravimo niz velicine 2x2.
int[][] niz = new int[2][2].
Mozemo rucno proslediti vrednost svakog elementa niza. Za sada je niz oblika { {0, 0}, {0, 0} }. Ali ako prosledimo vrednost
niz[0][0] = 1. Niz postaje { {1, 0}, {0, 0} }. Tako kroz dve for petlju mozemo dodeliti vrednosti za ceo niz.
- Objasnite ucitavanje i obradu dvodimezionalnog niza.
→ Za ucitavanje dvodimenzionalnog niza se koriste dve for petlje, jedna se koristi za kretanje po vrsti, a druga za kretanje po koloni:
for (int i = 0; i < matrica.length; i++) {
for (int j = 0; j < matrica.length; j++) {
matrica[i][j] = ulaz.nextInt();
}
}
→ U prvoj iteraciji spoljasnje petlje, promenljiva i ima vrednost 0, a zatim se izvrsava unutrasnja petlja. U prvoj iteraciji unutrasnje petlje, promenljiva j ima vrednost 0, a zatim se izvrsava telo unutrasnje petlje. Element matrica[0][0] tj. u ovom slucaju prvi element matrice dobija vrednost koja se unosi sa tastature. Ovde se zavrsava prva iteracija unutrasnje petlje i unutrasnja petlja se izvrsava sve dok je promenljiva j manja od broja kolona. Kada se zavrsi poslednja iteracija unutrasnje petlje, program se vraca na spoljasnju petlju i ponovo radi isti postupak sve dok je promenljiva i manja od broja vrste.
- Unos dvodimenzionalnih nizova u metode - objasnite!
→ Dvodimenzionalni niz se ubacuje u neki metod na isti nacin kao sto se ubacuje i jednodimenzionalni nizovi. Niz moze da bude povratna vrednost nekog metoda. Recimo da imamo dve metode. getArray(), koji vraca dvodimenzionalni niz, i sum(int[][] niz), koji vraca vrednost svih elemeanta matrice. public static void main(String[] args) { // ucitavamo matricu int[][] niz = getArray();
// ispisujemo zbir svih elemenata System.out.println(“Zbir svih elemenata niza je: “ + sum(niz)); }
// ovde kreiramo matricu public static int[][] getArray() { // ucitavamo skener Scanner sc = new Scanner(System.in); // pravimo niz velicine 4x3 int[][] niz = new int[3][4]; //ucitavamo matricu koriscenjem dve for petlje. for ( int i = 0; i < niz.length; i++ ) { for ( int j = 0; j < niz[i].length; j++ ) { niz[i][j] = sc.nextInt(); } } return niz; }
public static int sum(int[][] niz) { // postavljamo zbir jednak 0 int zbir = 0; // prolazimo kroz elemente matrice for ( int i = 0; i < niz.length; i++ ) { for ( int j = 0; j < niz[i].length; j++ ) { // dodajemo vrednosti elemenata matrica zbiru zbir += niz[i][j]; } } // vracamo zbir return zbir; }
- Sta je objektno-orijentisano programiranje?
Objektno-orijentisano programiranje je programiranje sa upotrebom objekata. Ono nam omogucava efektivni razvoj velikih softverskih sistema i GUI.(Grafickih korisnickih interfejsa).
- Sta je objekat? Objasnite primenu objektnog tipa podataka.
Objekat ima svoj jedinstveni identitet i svoja svojstva, kao sto su stanje i ponasanje. On predstavlja entitet iz stvarnog zivota. Recimo da hocemo da napravimo program koji opisjue neki fakultet. On ce imati objekte kao profesor, student, radnik… ali i sam fakultet. Svi ti objekti koji poseduju neku funkcionalnost ili nad kojima se moze izvoditi neka aktivnost u odrjedjenoj situaciji su objektni tip podataka.
- Sta je klasa? Kako se graficki (UML) predstavlja klasa?
Klasa opisuje objekte sa slicnim karakteristikama i ponasanjima ( ona je opsti opis nekog objekta ). UML dijagram klasa prikazuje skup klasa, intefrejsa i njihovih relacija donosno opisuje strukturu sistema. Klese predstavljaju apstrakciju koja odredjuje zajednicku strukturu i ponasanje niza objekata. Objekti su instance klasa, koje se stvaraju, modifikuju svoje stanje i unistavaju tokom izvodjenja sistema. Svaki objekat ima stanje koje obuhvata vrednosti atributa i njenih veza sa drugim objektima. Svaka klasa sastoji se od imena, atributa i metoda.
- Objasnite kako se kreira klasa?
Klasa se kreira desnim klikom na paketu u kome zelite da napravite klasu. Izabirom na opciju New pojavljue se meni sa svim mogucnostima. Tu mozemo izabrati Java Class, nakon cega unosimo ime klase. Ono se pise Velikim pocetnim slovom, dok su paketi malim.
- Od kojih elemenata se sastoji klasa?
Klasa se sastoji od indetifikatora, atributa i metoda.
- Objasnite razliku i primenu statickih i objektnih clanova klase.
→ Staticki atributi imaju vrednost koja se ne menja u toku izvrsavanja programa, ovo znaci da za sve staticke atribute i metode stoji jedna ista vrednost za sve objekte.
→ Objektni atributi i metode u klasi imaju promenljivu vrednost koja je razlicita za svaki objekat.
- Opsti oblik predstavljanja klase - objasnite!
→ Telo klase sadrzi definicije statickih i ne statickih clanova klase. Opsti oblik je vrlo jednostavam u Javi.
→ Modifikatori klase nisu obavezni, ali se mogu sastojati od jedne ili vise reci kojima se odredjuju izvesne karakteristike klase koja se definise. To su default, public, private i protected.
→ Ime klase se gradi na uobicajeni nacin, uz to da sve reci imena klase pocinju velikim slovom.
→ Telo klase sadrzi definicije statickih ili ne statickih clanova klase.
Primer:
modifikatoriKlase class ImeKlase {
teloKlase;
}
- Sta su lokalne, a sta globalne promenljive? Objasnite oblast vazenja promenljive.
→ Globalna promenljiva metoda postoji od momenta kada se njena klasa prvi put koristi pa sve do kraja izvrsavanja celog programa.
→Lokalne promenljive dobijaju vrednost pre koriscenja.
- Objasnite kljucne reci this i super.
→ Rec this oznacava promenljivu klasnog tipa koja u trenutku poziva metoda dobija vrednost reference na objekat koji je metod pozvan.
→ Kljucna rec super sluzi za pozivanje metoda iz superKlase.