python 超类Shape表示平面图形变量为color,子类为Circle和Rectangle


"---"分隔开来的表示单独一个页面)

# 平面
class Shape:
def __init__(self,c):
self.__c = c
def setColor(self,c):
self.__c = c
def getColor(self):
return self.__c
def printInf(self):
print(self.__c)
--------------------------------------------------------------------

#圆
from Shape import Shape
class Circle(Shape):
def __init__(self,c,r):
super().__init__(c)
self.__r = r
def getArea(self):
return 3.14*self.__r**2
def getC(self):
return 2*3.14*self.__r
--------------------------------------------------------------------

#长方形
from Shape import Shape
class Rectangle(Shape):
def __init__(self,ys,chang,kuan):
super().__init__(ys)
self.__chang = chang
self.__kuan = kuan
def Area(self):
return self.__chang*self.__kuan
def C(self):
return 2*(self.__chang+self.__kuan)
--------------------------------------------------------------------

#调用对象
from Shape import Shape
from Circle import Circle
from Rectangle import Rectangle
c = Circle("red",12)
print(c.getArea(),c.getColor(),c.getC())
a = Rectangle("red",10,10)
print(a.Area(),a.getColor(),a.C())



posted @ 2020-12-25 16:30  发牌员鲍勃  阅读(578)  评论(0)    收藏  举报