构造一个类:圆,要求定义私有成员变量radius半径,静态成员变量numberofcircles用于统计实例化圆的个数,并在输出时输出构造第numberofcircles个圆;创建无参数构造方法和半径为参数的构造方法;获取圆半径的方法getRadius();设置圆半径的方法setRadius();获取圆对象个数的方法getnumberofcircles();获取圆面积的方法getArea();获取圆周长的方法。
时间: 2023-06-11 13:07:58 浏览: 54
以下是实现要求的圆类代码:
```python
class Circle:
# 静态成员变量,用于统计实例化圆的个数
numberofcircles = 0
def __init__(self, radius=0):
self.__radius = radius
# 每实例化一个圆,numberofcircles加1
Circle.numberofcircles += 1
print("构造第{}个圆".format(Circle.numberofcircles))
def getRadius(self):
return self.__radius
def setRadius(self, radius):
self.__radius = radius
def getnumberofcircles(self):
return Circle.numberofcircles
def getArea(self):
return 3.14 * self.__radius ** 2
def getPerimeter(self):
return 2 * 3.14 * self.__radius
```
使用示例:
```python
# 实例化三个圆
c1 = Circle(2)
c2 = Circle(3)
c3 = Circle(4)
# 获取圆半径
print("c1半径:", c1.getRadius())
print("c2半径:", c2.getRadius())
print("c3半径:", c3.getRadius())
# 设置圆半径
c1.setRadius(5)
print("c1半径:", c1.getRadius())
# 获取圆对象个数
print("圆对象个数:", Circle.getnumberofcircles())
# 获取圆面积和周长
print("c1面积:", c1.getArea())
print("c1周长:", c1.getPerimeter())
```
输出结果:
```
构造第1个圆
构造第2个圆
构造第3个圆
c1半径: 2
c2半径: 3
c3半径: 4
c1半径: 5
圆对象个数: 3
c1面积: 78.5
c1周长: 31.400000000000002
```