Design a Vehicle Class Hierarchy in Java to Demonstrate Polymorphism.
Definition of Polymorphism: Polymorphism is an ability to take more than one form. It is two types, "Compile Time Polymorphism" and "Run Time Polymorphism".
class Vehicle { String regno; int model; Vehicle(String r, int m) { regno=r; model=m; } void display() { System.out.println("Registration no: "+regno); System.out.println("Model no: "+model); } } class Twowheeler extends Vehicle { int noofwheel; Twowheeler(String r,int m,int n) { super(r,m); noofwheel=n; } void display() { System.out.println("Two wheeler tvs"); super.display(); System.out.println("No. of wheel : " +noofwheel); } } class Threewheeler extends Vehicle { int noofleaf; Threewheeler(String r,int m,int n) { super(r,m); noofleaf=n; } void display() { System.out.println("Three wheeler auto"); super.display(); System.out.println("No. of leaf:" +noofleaf); } } class Fourwheeler extends Vehicle { int noofleaf; Fourwheeler(String r,int m,int n) { super(r,m); noofleaf=n; } void display() { System.out.println("Four wheeler car"); super.display(); System.out.println("No. of leaf:" +noofleaf); } } class VehicleDemo { public static void main(String arg[]) { Twowheeler t1; Threewheeler th1; Fourwheeler f1; t1=new Twowheeler("TN74 12345", 1,2); th1=new Threewheeler("TN74 54321", 4,3); f1=new Fourwheeler("TN34 45677",5,4); t1.display(); th1.display(); f1.display(); } }
OUTPUT:
Two wheeler tvs Registration no: TN74 12345 Model no: 1 No. of wheel : 2 Three wheeler auto Registration no: TN74 54321 Model no: 4 No. of leaf:3 Four wheeler car Registration no: TN34 45677 Model no: 5 No. of leaf:4