Java OOP - Polimorfizam

Polimorfizam spada u grupu osnovnih koncepata objektno orijentisanog programiranja (OOP). Ako bismo grubo prevodili ovaj pojam, mogli bi da kažemo da je reč o više formi.

Polimorfizam ide zajedno sa nasleđivanjem i to u situacijama kada u podklasama imamo potrebu da promenimo (override) ponašanje metoda iz nadklase. Na ovaj način možemo da dobijemo situaciju da se jedna ista metoda ponaša različito kod različitih objekata.

public class A{
  public void methodA(){
  }
}

public class B extends A{

 @override
 public void methodA(){
   System.out.println("klasa B");
 }

}

public class C extends A{

 @override
 public void methodA(){
   System.out.println("klasa C");
 }

}

Na primeru iznad smo kreirali dve klase B i C koje su podklase klase A. Vidimo da one imaju istu metodu methodA(), ali ona ima dve različite implementacije.

B b = new B();
C c = new C();

b.methodA();
c.methodA();
//pozivamo istu metodu, na dva razlicita objekta
//imamo razlicito ponasanje

Ovo predstavlja polimorfizam na delu!

 

Korišćenjem ovog sajta prihvatate upotrebu kolačića. Saznajte više