java编程。类。 常见平面图形(如三角形、圆、矩形和正方形等)的面积。利用抽象类,编写程序实现该

java编程。类。常见平面图形(如三角形、圆、矩形和正方形等)的面积。利用抽象类,编写程序实现该功能,编写测试类ShapeDemo分别对不同形状进行测试。分析:各种平面图... java编程。类。
常见平面图形(如三角形、圆、矩形和正方形等)的面积。利用抽象类,编写程序实现该功能,编写测试类ShapeDemo分别对不同形状进行测试。
分析:各种平面图形都可以求出其面积,但不同的形状求面积的方法不同,因此可以定义一个平面图形形状类Shape。Shape类中有一个求面积的抽象方法(area),只所以定义为抽象方法是因为不同的平面图形求法不同。圆(Circle)、矩形(Rectangle)和三角形(Triangle)是不同的形状,它们都是Shape的子类,而正方形(Square)是矩形(Rectangle)中的一种特殊类型,因此正方形是矩形的子类。
展开
 我来答
Rankabc
推荐于2017-09-29 · TA获得超过3561个赞
知道大有可为答主
回答量:3705
采纳率:59%
帮助的人:1069万
展开全部
abstract class Shape{
abstract double area();
}

class Circle extends Shape {
private double r;
private final double PI=3.14;

public Circle(double r) {
this.r = r;
}

@Override
double area() {
return PI*r*r;
}
}
 
class Rectangle extends Shape {
private double w;
private double h;

public Rectangle(double w, double h) {
this.w = w;
this.h = h;
}

@Override
double area() {
return w * h;
}
}

class Triangle extends Shape {
private double h;
private double l;

public Triangle(double h, double l) {
this.h = h;
this.l = l;
}

@Override
double area() {
return 0.5 * h * l;
}
}

class Square extends Rectangle {
public Square(double l) {
super(l, l);
}
}

public class Test {
public static void main(String[] args) {
System.out.println("圆 "+new Circle(1).area());
System.out.println("矩形 "+new Rectangle(4,2).area());
System.out.println("正方形 "+new Square(3).area());
System.out.println("三角形 "+new Triangle(3,4).area());
}
}
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式