用JAVA代码实现4、定义MySquare(正方形类),继承MyRectangle类,实现IDiagArea接口,并添加以下内容: 构造方法:1个参数,调用父类的构造方法把长、宽设置为相等(即边长),为参数的值。 重写output方法:调用成员方法计算并输出正方形的相关信息(边长、面积、周长、对角线长度)(开根号可调用Math.sqrt(double a)的方法) 5、定义测试类Demo,编写main方法,新建MyRectangle、MySquare对象,属性可以直接使用常量或键盘输入,并分别调用它们的output方法。
时间: 2024-03-20 21:42:12 浏览: 60
下面是Java代码实现:
4. MySquare类,继承MyRectangle类,实现IDiagArea接口,添加构造方法和重写output方法
```java
public class MySquare extends MyRectangle implements IDiagArea {
public MySquare(double side) {
super(side, side);
}
@Override
public double getDiagonal() {
return Math.sqrt(2) * length;
}
@Override
public void output() {
System.out.println("正方形边长:" + length);
System.out.println("正方形面积:" + getArea());
System.out.println("正方形周长:" + getPerimeter());
System.out.println("正方形对角线长度:" + getDiagonal());
}
}
```
5. Demo类,新建MyRectangle和MySquare对象并调用output方法
```java
import java.util.Scanner;
public class Demo {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入长方形的长和宽:");
double length = scanner.nextDouble();
double width = scanner.nextDouble();
MyRectangle rectangle = new MyRectangle(length, width);
rectangle.output();
System.out.println("请输入正方形的边长:");
double side = scanner.nextDouble();
MySquare square = new MySquare(side);
square.output();
scanner.close();
}
}
```
使用示例:
输入长方形的长和宽:
```
3 4
```
输入正方形的边长:
```
5
```
输出结果:
```
长方形长:3.0
长方形宽:4.0
长方形面积:12.0
长方形周长:14.0
正方形边长:5.0
正方形面积:25.0
正方形周长:20.0
正方形对角线长度:7.0710678118654755
```
阅读全文