Polymorphisim 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.