7.设计一个抽象类Shape, 属性为x和y,表示圆心坐标,计算面积的抽象方法doublearea(),并设计一个计算圆心距离坐标原点距离的方法distance(double x ,double y);在Shape类的基础上设计子类,分别是圆Circle和正方形Square,其属性分别为半径r和边长l,都具有求面积的方法。设计一个测试类Test,创建Circle和Square的对象c和s,使c的半径为5,s的边长为10,求出面积并显示出来。当圆心坐标为(3,4)的时候,求圆心距离坐标原点距离并显示出来。
注:开平方的方法Math.sqrt(double x);
abstract class Shape{
double x,y;
abstract double area();
double distance(double x ,double y){
return Math.sqrt(x*x+y*y);
}
}
class Circle extends Shape{
double r;
Circle(double r){
this.r=r;
}
double area(){
return 3.14*r*r;
}
}
class Square extends Shape{
double L;
Square(double L){
this.L=L;
}
double area(){
return L*L;
}
}
class Test{
public static void main (String [] args){
Circle c = new Circle(5);
Square s = new Square(10);
System.out.println("圆面积="+c.area());
System.out.println("正方形面积="+s.area());
System.out.println("圆心距离原点="+c.distance(3,4));
}
}