uses of polymorphis, code example

Example: Polymorphisim

Polymorphism means objects behave in different forms. 
■ It occurs when parent class/interface 
calls to child class' objects 
Sub class can never be the reference type of Super Class Object
■ The reference of an object decides what is accessible.
■ Abstract class and interface are meant to be reference type,
CAN NEVER BE IN OBJECT TYPE
Static polymorphism. Ex: method overloading.  
Dynamic polymorphism Ex: method overriding 
EXAMPLE: WebDriver driver = new ChromeDriver(); 
driver.get()-> chrome, firefox
we are initializing Chrome browser using 
Selenium WebDriver. It also means we are creating 
a reference variable (driver) of the interface (WebDriver) 
and creating an Object (from ChromeDriver class). 
I am using Polymorphism In my framework in Driver Class. 
By making return type WebDriver I will be able to return 
ChromeDriverObject and FireFoxDriverObject. That’s how I achieve 
multi browser testing.
Reference type decides what can be called or accessed
WebDriver driver = getDriver();
getDriver() ==> chrome, firefox, ...
        
List<WebElement> list = new ArrayList<>();
List being reference to ArrayList. List is a super type of ArrayList. 
Map being reference to HasMap. Set is being reference to HashSet.

Tags:

Misc Example