设计一个Python的类方法例题
时间: 2024-03-16 14:44:36 浏览: 18
好的,这里是一个Python的类方法例题:
```python
class Rectangle:
def __init__(self, length, width):
self.length = length
self.width = width
@classmethod
def from_square(cls, side):
return cls(side, side)
def area(self):
return self.length * self.width
rect1 = Rectangle(5, 3)
print(rect1.area()) # Output: 15
rect2 = Rectangle.from_square(4)
print(rect2.area()) # Output: 16
```
这个类表示一个矩形,有一个初始化方法 `__init__` 来创建矩形对象,其中传入参数为矩形的长度和宽度。此外,还有一个类方法 `from_square`,用于创建正方形对象,传入参数为正方形的边长。通过这个类方法创建的正方形对象的长度和宽度相等,即边长相等。最后,定义了一个计算矩形面积的实例方法 `area`,可以计算矩形或正方形的面积。
在主程序中,我们先创建了一个长度为 5,宽度为 3 的矩形 `rect1`,计算它的面积并输出结果。然后,通过类方法 `from_square` 创建了一个边长为 4 的正方形 `rect2`,同样计算它的面积并输出结果。