java编程。类。 常见平面图形(如三角形、圆、矩形和正方形等)的面积。利用抽象类,编写程序实现该
java编程。类。常见平面图形(如三角形、圆、矩形和正方形等)的面积。利用抽象类,编写程序实现该功能,编写测试类ShapeDemo分别对不同形状进行测试。分析:各种平面图...
java编程。类。
常见平面图形(如三角形、圆、矩形和正方形等)的面积。利用抽象类,编写程序实现该功能,编写测试类ShapeDemo分别对不同形状进行测试。
分析:各种平面图形都可以求出其面积,但不同的形状求面积的方法不同,因此可以定义一个平面图形形状类Shape。Shape类中有一个求面积的抽象方法(area),只所以定义为抽象方法是因为不同的平面图形求法不同。圆(Circle)、矩形(Rectangle)和三角形(Triangle)是不同的形状,它们都是Shape的子类,而正方形(Square)是矩形(Rectangle)中的一种特殊类型,因此正方形是矩形的子类。 展开
常见平面图形(如三角形、圆、矩形和正方形等)的面积。利用抽象类,编写程序实现该功能,编写测试类ShapeDemo分别对不同形状进行测试。
分析:各种平面图形都可以求出其面积,但不同的形状求面积的方法不同,因此可以定义一个平面图形形状类Shape。Shape类中有一个求面积的抽象方法(area),只所以定义为抽象方法是因为不同的平面图形求法不同。圆(Circle)、矩形(Rectangle)和三角形(Triangle)是不同的形状,它们都是Shape的子类,而正方形(Square)是矩形(Rectangle)中的一种特殊类型,因此正方形是矩形的子类。 展开
1个回答
展开全部
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());
}
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询