for循环体现多态
This commit is contained in:
@@ -2,13 +2,19 @@ class Shape:
|
|||||||
def area(self):
|
def area(self):
|
||||||
return 0
|
return 0
|
||||||
|
|
||||||
class Circle(area):
|
class Circle(Shape):
|
||||||
def __init__(self, r):
|
def __init__(self, r):
|
||||||
self.r = r
|
self.r = r
|
||||||
def area(self):
|
def area(self):
|
||||||
return 3.14 * self.r * self.r
|
return 3.14 * self.r * self.r
|
||||||
class Square(area):
|
class Square(Shape):
|
||||||
def __init__(self, side):
|
def __init__(self, side):
|
||||||
self.side = side
|
self.side = side
|
||||||
def area(self):
|
def area(self):
|
||||||
return self.side * self.side
|
return self.side * self.side
|
||||||
|
|
||||||
|
r = float(input("请输入半径r:"))
|
||||||
|
side = float(input("请输入边长side: "))
|
||||||
|
shapes = [Circle(r), Square(side)]
|
||||||
|
for i in shapes:
|
||||||
|
print(i.__class__.__name__, "面积为:", i.area())
|
||||||
Reference in New Issue
Block a user