polymorphism java code example
Example 1: c# polymorphism
class Animal{
public virtual void animalSound() {
Console.WriteLine("The animal makes a sound");
}
}
class Pig: Animal {
public override void animalSound() {
Console.WriteLine("The pig says: wee wee");
}
}
class Dog: Animal {
public override void animalSound() {
Console.WriteLine("The dog says: bow wow");
}
}
static class main {
static void Main(){
Animal[] animals = new Animal[3];
animals[0] = new Animal();
animals[1] = new Dog();
animals[2] = new Pig();
foreach (Animal a in animals){
a.animalSound();
}
}
}
Example 2: what is polymorphism
The word polymorphism means having many forms. In simple words, we can define polymorphism as the ability of a message to be displayed in more than one form. Real life example of polymorphism: A person at the same time can have different characteristic. Like a man at the same time is a father, a husband, an employee.
Example 3: what is polymorphism
POLYMORPHISM: It is an ability of object to behave in multiple
form. The most common use of polymorphism is Java, when a
parent class reference type of variable is used to refer to a child
class object.
In my framework
E.g.: WebDriver driver = new ChromeDriver();
We use method overloading and overriding to achieve
Polymorphism.
There are two types of achieving Polymorphism
Upcasting & Downcasting
Upcasting is casting a subtype to a supertype,
going up in the inheritance tree.
It is done implicitly
in order to use method available on any
interface/class, the object should be of
same class or of class implementing the interface.
WebDriver driver = new ChromeDriver();
or
TakeScreenShot ts = new ChromeDriver();
Downcasting is casting to a subtype,
going down in the inheritance tree.
It is done to access sub class features.
It has to be done manually
ChromeDriver driver = (ChromeDriver)Webdriver;
Example 4: polymorphism in java
class Shapes
{
public void sides()
{
System.out.println("sides() method.");
}
}
class Square extends Shapes
{
public void sides()
{
System.out.println("square has four sides.");
}
}
class Triangle extends Shapes
{
public void sides()
{
System.out.println("triangle has three sides.");
}
}
class PolymorphismExample
{
public static void main(String[] args)
{
Shapes shape = new Shapes();
Shapes square = new Square();
Shapes triangle = new Triangle();
shape.sides();
square.sides();
triangle.sides();
}
}