用java设计一个图形类,包括矩形、圆形和三角形等之类。每个子类都有自己的特定的属性和方法,比如矩形有长和宽、原有半径等,同时每个子类都可以计算自己的面积和周长
时间: 2023-11-23 15:58:01 浏览: 139
以下是Java中设计一个图形类的示例代码,包括矩形、圆形和三角形等子类。每个子类都有自己的特定属性和方法,同时可以计算自己的面积和周长:
```java
// Shape类
abstract class Shape {
abstract double area();
abstract double perimeter();
}
// 矩形类
class Rectangle extends Shape {
double length;
double width;
Rectangle(double length, double width) {
this.length = length;
this.width = width;
}
double area() {
return length * width;
}
double perimeter() {
return 2 * (length + width);
}
}
// 圆形类
class Circle extends Shape {
double radius;
Circle(double radius) {
this.radius = radius;
}
double area() {
return Math.PI * radius * radius;
}
double perimeter() {
return 2 * Math.PI * radius;
}
}
// 三角形类
class Triangle extends Shape {
double a;
double b;
double c;
Triangle(double a, double b, double c) {
this.a = a;
this.b = b;
this.c = c;
}
double area() {
double p = (a + b + c) / 2;
return Math.sqrt(p * (p - a) * (p - b) * (p - c));
}
double perimeter() {
return a + b + c;
}
}
```