编写java程序,程序中定义一个抽象类Area、两个Area类的派生子类RectArea类和RoundArea类、以及实现类Impl

以及实现类ImpleArea类。要求1、抽象类Area类中只包含一个抽象方法:double area
2、子类RoundArea类通过覆盖父类中的抽象方法area来求圆的面积,另一个子类RectArea类通过覆盖父类中的抽象方法area求长方形的面积
3、圆的半径和长方形的边分别定义为子类RoundArea类和RectArea类的域,都为double类型
4、ImpleArea类中接收键盘输入,输入内容分别为长方形的边和圆的半径,求出长方形和圆的面积,并在屏幕伤感显示

第1个回答  2011-04-11
abstract class Area{
abstract double area();
}

//矩形面积类
class RectArea extends Area{
private double width; //宽
private double height; //高

public RectArea(){
}

public RectArea(double width, double height){
this.width = width;
this.height = height;
}

public double area() {
return this.width * this.height;
}

public double getWidth(){
return this.width;
}

public void setWidth(double width){
this.width = width;
}

public double getHeight(){
return this.height;
}

public void setHeight(double height){
this.height = height;
}
}

//圆面积类
class RoundArea extends Area{
private double radius; //半径

public RoundArea(){
}

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

public double area() {
return Math.PI * this.radius * this.radius;
}

public double getRadius(){
return this.radius;
}

public void setRadius(double radius){
this.radius = radius;
}
}

class ImpleArea{
public void displayArea(){
Scanner scan = new Scanner(System.in);
Area a;

a = new RectArea();
System.out.print("矩形的宽:");
((RectArea)a).setWidth(scan.nextDouble());
System.out.print("矩形的高:");
((RectArea)a).setHeight(scan.nextDouble());
System.out.println("矩形的面积:" + a.area());

a = new RoundArea();
System.out.print("圆的半径:");
((RoundArea)a).setRadius(scan.nextDouble());
System.out.println("圆的面积:" + a.area());
}
}

public class Test {
public static void main(String[] args) {
ImpleArea impl = new ImpleArea();
impl.displayArea();
}
}
第2个回答  2011-04-11
像这种简单的程序,你们的课本上应该有吧,如果我们帮你写出来,感觉没多大的意义哦,我记得这个求面积的例子,课本上是有的,自己好好的研究下应该就可以写出来这个程序了,java其实是个很有趣的语言,你只要认真去分析下,你会觉得java太容易了!
好好的了解下java类和接口的定义,继承类,还有java.io,要相信自己哦!~追问

恩,谢谢啊,我会继续努力的哦

追答

恩,你可以自己先研究下,如果有麻烦再说出来!

本回答被网友采纳
相似回答