Professional Documents
Culture Documents
06 Interfejsi - Java PDF
06 Interfejsi - Java PDF
programiranje 2
Interfejsi
Uvod
4 Interfejsi 07.03.2017.
enum tip umesto konstanti
5 Interfejsi 07.03.2017.
Konstruktori i metodi nabrajanja
Argumenti koji se navode uz konstantu su argumenti konstruktora
Konstruktor se izvršava za konstantu prilikom učitavanja klase
enum Nabrajanje{
PRVI(1), DRUGI(2), TRECI(3);
int vrednost;
Nabrajanje(int i){vrednost=i;}
int vrednost(){return vrednost;}
}
class ProbaEnum{
public static void main(String[] a){
System.out.println(Nabrajanje.PRVI+"="
+Nabrajanje.PRVI.vrednost());
}
}
6 Interfejsi 07.03.2017.
Podrazumevani metodi
7 Interfejsi 07.03.2017.
Statički metodi
8 Interfejsi 07.03.2017.
Proširivanje implementacije interfejsa
9 Interfejsi 07.03.2017.
Korišćenje implementacije interfejsa
11 Interfejsi 07.03.2017.
Jednostruko/višestruko nasleđivanje
12 Interfejsi 07.03.2017.
Višestruko nasleđivanje u Javi
13 Interfejsi 07.03.2017.
Proširivanje interfejsa
14 Interfejsi 07.03.2017.
Primeri
Primeri višestrukog nasleđivanja u romboidnoj (dijamant) strukturi:
interface W{}
interface X extends W{} W
class Y implements W{} X Y
Z
class Z extends Y implements X{}
interface W{}
interface X extends W{}
W
interface Y extends W{} X Y
class Z implements X,Y{} Z
15 Interfejsi 07.03.2017.
Relacija sa klasom Object
16 Interfejsi 07.03.2017.
Konflikti imena metoda
17 Interfejsi 07.03.2017.
Različite throws klauzule
18 Interfejsi 07.03.2017.
Konflikti imena konstanti
Dva implementirana interfejsa mogu da imaju istoimene konstante
– za takve konstante treba koristiti imena sa kvalifikatorima
Primer:
– interfejsi PreferansSpil i RemiSpil
sadrže konstante VELICINA različitih vrednosti
– klasa MultiSpil implementira oba interfejsa
– u klasi MultiSpil moraju se koristiti imena
PreferansSpil.VELICINA, odnosno RemiSpil.VELICINA
– samo VELICINA je dvosmisleno
Ako se imenovana konstanta nasleđuje po više linija izvođenja
– ne postoji problem – to je ista konstanta
Isto važi za podrazumevane i statičke metode
– ako se nasleđuju po više linija izvođenja – to je isti metod
19 Interfejsi 07.03.2017.