python编写程序,父类是圆,派生出圆柱体。
圆(Circle)类:私有属性radius,有一个参数的构造方法、setRadius方法、getRadius方法、cir方法(周长)、area方法(面积),print方法(输出圆的半径)。圆柱体(Cylinder):私有属性height,有两个个参数的构造方法,setHeight方法、getHeight方法、barea方法(计算表面积)、vol方法(计算体积)、输出半径和高的方法print。#定义
·
圆(Circle)类:私有属性radius,有一个参数的构造方法、setRadius方法、getRadius方法、cir方法(周长)、area方法(面积),print方法(输出圆的半径)。
圆柱体(Cylinder):私有属性height,有两个个参数的构造方法,setHeight方法、getHeight方法、barea方法(计算表面积)、vol方法(计算体积)、输出半径和高的方法print。
#定义圆类Circle
class Circle:
def __init__(self,radius):
#初始化私有半径
self.__radius=radius
#获取圆半径
def getRadius(self):
return self.__radius
#设置圆半径
def setRadius(self,r):
self.__radius=r
#计算面积
def area(self):
return 3.14*self.__radius**2
#计算周长
def cir(self):
return 2*3.14*self.__radius
#返回字符串表达式
def __str__(self):
return '半径是:'+str(self.__radius)
#定义圆柱体类
class Cylinder(Circle):
#定义圆柱体构造方法
def __init__(self,radius,height):
Circle.__init__(self,radius)
#调用父类的构造方法,传递长和宽
super().__init__(radius)
#添加本类新增的私有实例变量高,并初始化
self.__height=height
def getHeight(self):
return self.__height
def setHeight(self,h):
self.__height=h
def barea(self):
return 3.14*2*self.getRadius()*self.__height+3.14*self.getRadius()**2*2
def vol(self):
return 3.14*self.getRadius()**2*self.__height
def __str__(self):
return '半径是:'+super().str(self.__radius)+'高是:'+str(self.__height)
if __name__=='__main__':
c=Circle(5)
print("半径为{0}的圆的面积为{1},周长是{2:.2f}".format(c.getRadius(),c.area(),c.cir()))
cy = Cylinder(5, 9)
print("半径为{0}的圆柱体的面积为{1},体积是{2}".format(cy.getRadius(),cy.barea(),cy.vol()))
更多推荐
已为社区贡献5条内容
所有评论(0)