//(a) Multilevel Inheritance
class A
{   int x;
    A(int x) { this.x=x; }
    void display()
    {   System.out.println(x);
    }
}
class B extends A
{   int y;
    B(int x, int y) { super(x); this.y=y; }
    void display()
    {   super.display();
        System.out.println(y);
    }
}
class C extends B
{   int z;
    C(int x, int y, int z) { super(x,y); this.z=z; }
    void display()
    {   super.display();
        System.out.println(z);
    }
}
//(b) Interfaces
interface Sphere
{   double pi=3.14159265359;
    double surfaceArea(double r);
    double volume(double r );
    double d2r(double d);
    double r2d(double r);
}

public class InheritanceQ10 implements Sphere
{   public double surfaceArea(double r)
    {   return 4*pi*Math.pow(r,2);
    }
    public double volume(double r)
    {   return 4d/3d*pi*Math.pow(r,3);
    }    
    public double d2r(double d)
    {   return d*pi/180;
    }
    public double r2d(double r)
    {   return r*180/pi;
    }
}
//(c) See interface presentation for multiple inheritance simulation
