java定义一个抽象Shape类,包含私有属性name,两个构造方法public Shape()、 public Shape(String name),name的setter和getter方法以及两个抽象方法double getPerimeter()和 double getArea()定义一个名为 Square 的类表示正方形,使其继承 Shape 抽象类,覆盖 Shape 类中的抽象方法 getPerimeter()和 getArea()。编写程序测试 Square 类的使用。
时间: 2023-06-08 08:09:27 浏览: 121
好的,您想问如何定义一个java抽象类Shape,以及如何让Square继承Shape并覆盖其中的抽象方法getPerimeter()和getArea(),最终编写程序测试Square类的使用。
以下是您需要的Java代码示例:
1. 定义Shape抽象类
```java
public abstract class Shape {
private String name;
public Shape() {}
public Shape(String name) {
this.name = name;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
// 定义抽象方法
public abstract double getPerimeter();
public abstract double getArea();
}
```
2. 定义Square类继承Shape并覆盖其中的抽象方法
```java
public class Square extends Shape {
private double side;
public Square(double side) {
super("正方形");
this.side = side;
}
public double getSide() {
return side;
}
public void setSide(double side) {
this.side = side;
}
@Override
public double getPerimeter() {
return 4 * side;
}
@Override
public double getArea() {
return side * side;
}
}
```
3. 编写测试程序
```java
public class SquareTest {
public static void main(String[] args) {
Square square = new Square(5);
System.out.println(square.getName() + "的周长为:" + square.getPerimeter());
System.out.println(square.getName() + "的面积为:" + square.getArea());
}
}
```
运行结果:
正方形的周长为:20.0
正方形的面积为:25.0
感谢您的提问,希望回答能够帮到您!
阅读全文