Polymorphism Lab in Java
Polymorphism Lab in Java
Objective:
To learn and implement polymorphism, both compile-time (method
overloading) and runtime (method overriding), in Java.
Explanation of Polymorphism
class Calculator {
// Overloaded methods
public int add(int a, int b) {
return a + b;
}
System.out.println(c);
obj1.disp('a');
obj1.disp('a',5);
Output
System.out.println(c);
obj1.disp('a');
obj1.disp('5',6);
}
class DisplayOverloading {
System.out.println(c);
class sample {
obj.disp('a',5);
obj.disp('a');
Output
2. Runtime Polymorphism (Method Overriding)
Create a parent class with a method, then override it in a child class.
```java
class Animal {
// Method to be overridden
public void sound() {
System.out.println("Animals make sounds");
}
}
Method overriding
package oop;
class Animal{
@Override
//Animal class
Output
3. Demonstrate Polymorphism
Write a main class to test both types of polymorphism.
```java
public class PolymorphismLab {
public static void main(String[] args) {
// Compile-time Polymorphism
Calculator calc = new Calculator();
System.out.println("Integer addition: " + calc.add(5, 10));
System.out.println("Double addition: " + calc.add(5.5, 10.5));
System.out.println("String concatenation: " + calc.add("Hello", "World"));
// Runtime Polymorphism
Animal myAnimal; // Reference of parent type
Expected Output
Integer addition: 15
Double addition: 16.0
String concatenation: Hello World
Dog barks
Cat meows