day 21作业
2024-10-06 11:24:21
一.定义一个类:圆形,该类有半径,周长,面积等属性,将半径隐藏起来,将周长与面积开放
解答
import math
class Circle:
def __init__(self,radius):
self.radius=radius
@property
def area(self):
return math.pi*self.radius**2
@property
def perimeter(self):
return 2*math.pi*self.radius
c = Circle(10)
print(c.radius)
print(c.area)
print(c.perimeter)
二.使用abc模块定义一个phone抽象类 并编写一个具体的实现类
import abc #利用abc模块实现抽象类
class Phone(metaclass=abc.ABCMeta):
@abc.abstractmethod #定义抽象方法,无需实现功能
def phone_name(self):
pass
@abc.abstractmethod #定义抽象方法,无需实现功能
def phone_price(self):
'子类必须定义写功能'
pass
class iPhone(Phone): #子类继承抽象类,但是必须定义方法
def phone_name(self):
print('苹果手机 11')
def phone_price(self):
print('价格一万')
class huawei(Phone): #子类继承抽象类,但是必须定义方法
def phone_name(self):
print('华为手机 pr30')
def phone_price(self):
print('价格两万')
i1 = iPhone()
h1 = huawei()
i1.phone_name()
h1.phone_name()
i1.phone_price()
h1.phone_price()
最新文章
- 半吊子学习Swift--天气预报程序-准备工作
- C# 获取 oracle 存储过程的 返回值1
- uva 816 abbott's revenge ——yhx
- .net架构设计读书笔记--第二章 设计体系结构
- 用HTML5实现的各种排序算法的动画比较 及算法小结
- 百度Paddle会和Python一样,成为最流行的深度学习引擎吗?
- JS判断对象是否存在的方法
- oc_转_类的数组的实现和操作
- 精通 Oracle+Python,第 1 部分:查询最佳应践
- iOS教你轻松打造瀑布流Layout
- iOS NSDictionary、NSData、JSON等 数据类型相互转换
- python selenium初入
- j2ee基础
- mysql-merge合并表
- 面向亿万级用户的QQ一般做什么?——兴趣部落的 Web 同构直出分享
- 详解UML中的6大关系(关联、依赖、聚合、组合、泛化、实现)
- 201771010134杨其菊《面向对象程序设计(java)》第十六周学习总结
- luogu P2680 运输计划 (二分答案+树上差分)
- 解决无法连接mysql问题
- CM记录-CDH故障修复处理记录
热门文章
- react页面内嵌微信二维码 和 自定义样式 以及 微信网页共用unionId问题
- ets查询接口match、select说明
- Scrapy框架的下载与安装
- Go语言标准库之context
- Mysql两种引擎
- .Net基础篇_学习笔记_第六天_for循环语法_正序输出和倒序输出
- GlusterFs卷类型分析及创建、使用(结合kubernetes集群分析)
- Winform中通过代码给PanelControl添加子控件并进行定位
- iOS面试题整理带答案
- 喜大普奔,两个开源的 Spring Boot + Vue 前后端分离项目可以在线体验了