1. 设计一个Circle类,类的属性包括半径radius和颜色color,类的方法包括构造方法(该方法至少应包含radius和color),获取周长的方法、获取面积的方法。并编写代码,对设计的类进行实例化,以验证设计的类的功能。 2. 设计一个MyCircle类,继承1题中的Circle类,并分别设计设置半径、设置颜色、获取半径、获取颜色的方法。并编写代码,对设计的类进行实例化,验证所继承的方法和新设计的方法。
时间: 2024-02-18 08:00:43 浏览: 66
以下是第一题的代码实现:
```python
import math
class Circle:
def __init__(self, radius, color):
self.radius = radius
self.color = color
def get_circumference(self):
return 2 * math.pi * self.radius
def get_area(self):
return math.pi * self.radius ** 2
```
以上代码中,我们定义了一个Circle类,包含属性 radius 和 color,以及方法 get_circumference 和 get_area,分别用于计算周长和面积。构造方法 __init__ 中,我们定义了 radius 和 color 的初始值。
接下来是对 Circle 类进行实例化和验证的代码:
```python
c = Circle(3, 'red')
print(c.get_circumference()) # 输出 18.84955592153876
print(c.get_area()) # 输出 28.274333882308138
```
在上面的代码中,我们首先实例化了一个 Circle 对象 c,并设置了半径为 3,颜色为红色。然后,我们分别调用了 get_circumference 和 get_area 方法,对 Circle 类的功能进行了验证。
以下是第二题的代码实现:
```python
class MyCircle(Circle):
def set_radius(self, radius):
self.radius = radius
def set_color(self, color):
self.color = color
def get_radius(self):
return self.radius
def get_color(self):
return self.color
```
以上代码中,我们定义了一个 MyCircle 类,继承自 Circle 类,并新增了 set_radius、set_color、get_radius 和 get_color 方法,用于设置和获取半径和颜色属性。
接下来是对 MyCircle 类进行实例化和验证的代码:
```python
c = MyCircle(3, 'red')
c.set_radius(4)
c.set_color('blue')
print(c.get_radius()) # 输出 4
print(c.get_color()) # 输出 'blue'
print(c.get_circumference()) # 输出 25.132741228718345
print(c.get_area()) # 输出 50.26548245743669
```
在上面的代码中,我们首先实例化了一个 MyCircle 对象 c,并设置了半径为 3,颜色为红色。然后,我们分别调用了 set_radius、set_color、get_radius、get_color 方法,对 MyCircle 类的新增功能进行了验证。最后,我们还调用了继承自 Circle 类的 get_circumference 和 get_area 方法,对 MyCircle 类对 Circle 类的继承进行了验证。
阅读全文