Thursday, June 4, 2015

Interface with Polymorphism 4


package areaAndPerimeter;

public class InheritanceWithPolymorphismDemo4
{
public static void main(String[] args)
{
Measurable4 measurable = new Rectangle4(10, 10);
measurable.getArea();
measurable.getPerimeter();
System.out.println("Using measurable interface reference the area and parimeter is:\n "
+measurable.getArea()+" and "+ measurable.getPerimeter()+" \n ");

Measurable4 measurable3 = new Circle4(10);
measurable3.getArea();
measurable3.getPerimeter();
System.out.println("Using measurable interface reference the area and parimeter is:\n "
+measurable3.getArea()+" and "+ measurable3.getPerimeter()+"\n");

getTotalArea(measurable, measurable3);
}

public static void getTotalArea(Measurable4 m1 , Measurable4 m2)
{
System.out.println("The total area of the two object is: " + (m1.getArea()+m2.getArea()));
}
}


interface Measurable4
{
double PI = 3.1428;
public double getArea();
public double getPerimeter();
}


class Rectangle4 implements Measurable4
{
double length , breadth ;

public Rectangle4(double length , double breadth)
{
this.length = length;
this.breadth = breadth;
}

@Override
public double getArea()
{
return length * breadth;
}

@Override
public double getPerimeter()
{
return 2 * length * breadth ;
}
}


class Circle4 implements Measurable4
{
double radius;

public Circle4(double radius)
{
this.radius = radius;
}

@Override
public double getArea()
{
return PI * radius * radius;
}

@Override
public double getPerimeter()
{
return 2 * PI * radius ;
}
}


No comments:

Post a Comment