显示一张桌子的信息,包括桌子的形状(长方形,正方形,圆形,椭圆形);使用Rect、square、circle、ellipse)表示
时间: 2024-09-13 10:11:23 浏览: 152
在编程中,可以使用面向对象的方法来表示桌子的信息,其中包括使用不同的类来代表不同形状的桌子。例如,可以定义四个类:Rect、Square、Circle、Ellipse,它们分别代表长方形、正方形、圆形和椭圆形桌子。每个类都可以继承自一个共同的基类,比如叫作Table,这个基类会包含一些所有桌子共有的属性和方法,比如桌子的颜色、尺寸等。
具体来说:
1. Rect类:代表长方形桌子,可以有长度和宽度的属性。
2. Square类:代表正方形桌子,由于正方形是长宽相等的特殊长方形,可以继承自Rect类,并且只需要一个边长的属性。
3. Circle类:代表圆形桌子,可以有一个半径的属性。
4. Ellipse类:代表椭圆形桌子,可以有两个方向的半径属性,比如长轴半径和短轴半径。
每个类除了包含自身特有的属性外,还可以重写基类中的方法,比如显示桌子信息的方法,这样当调用这个方法时,会根据不同的桌子类型显示出相应的信息。
下面是一个简单的类设计示例:
```java
abstract class Table {
String material;
String color;
public Table(String material, String color) {
this.material = material;
this.color = color;
}
public abstract void displayInfo();
}
class Rect extends Table {
double length;
double width;
public Rect(String material, String color, double length, double width) {
super(material, color);
this.length = length;
this.width = width;
}
@Override
public void displayInfo() {
System.out.println("这是一张长方形桌子,长:" + length + ",宽:" + width + "。");
}
}
class Square extends Rect {
public Square(String material, String color, double side) {
super(material, color, side, side);
}
@Override
public void displayInfo() {
System.out.println("这是一张正方形桌子,边长:" + length + "。");
}
}
class Circle extends Table {
double radius;
public Circle(String material, String color, double radius) {
super(material, color);
this.radius = radius;
}
@Override
public void displayInfo() {
System.out.println("这是一张圆形桌子,半径:" + radius + "。");
}
}
class Ellipse extends Table {
double majorAxis;
double minorAxis;
public Ellipse(String material, String color, double majorAxis, double minorAxis) {
super(material, color);
this.majorAxis = majorAxis;
this.minorAxis = minorAxis;
}
@Override
public void displayInfo() {
System.out.println("这是一张椭圆形桌子,长轴半径:" + majorAxis + ",短轴半径:" + minorAxis + "。");
}
}
```
这样,当你创建了不同类型的桌子对象并调用它们的`displayInfo`方法时,就可以显示出相应的信息了。
阅读全文
相关推荐
![-](https://img-home.csdnimg.cn/images/20241231045021.png)
![-](https://img-home.csdnimg.cn/images/20241231044955.png)
![-](https://img-home.csdnimg.cn/images/20241231044955.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)