千锋教育-做有情怀、有良心、有品质的职业教育机构

400-811-9990
手机站
千锋教育

千锋学习站 | 随时随地免费学

千锋教育

扫一扫进入千锋手机站

领取全套视频
千锋教育

关注千锋学习站小程序
随时随地免费学习课程

上海
  • 北京
  • 郑州
  • 武汉
  • 成都
  • 西安
  • 沈阳
  • 广州
  • 南京
  • 深圳
  • 大连
  • 青岛
  • 杭州
  • 重庆
当前位置:郑州千锋IT培训  >  技术干货  >  python 抽象类和接口类

python 抽象类和接口类

来源:千锋教育
发布人:xqq
时间: 2023-11-09 09:35:32

继承有两种用途:

一:继承基类的方法,并且做出自己的改变或者扩展(代码重用)

二:声明某个子类兼容于某基类,定义一个接口类Interface,接口类中定义了一些接口名(就是函数名)且并未实现接口的功能,子类继承接口类,并且实现接口中的功能.

实践中,继承的第一种含义意义并不很大,甚至常常是有害的。因为它使得子类与基类出现强耦合。

继承的第二种含义非常重要。它又叫“接口继承”。

接口继承实质上是要求“做出一个良好的抽象,这个抽象规定了一个兼容接口,使得外部调用者无需关心具体细节,可一视同仁的处理实现了特定接口的所有对象”——这在程序设计上,叫做归一化。

1.做出良好的抽象类,2.规定兼容接口3.调用者可以无需关心具体实现细节,可以一视同仁处理实现特定接口的所有对象。

#做出一个良好的抽象

classPayment(object):

#规定了一个兼容接口

defpay(self):

pass

#微信支付

classWeChatPay(object):

defpay(self,money):

print('微信支付了%s'%money)

#支付宝支付

classAliPay(object):

defpay(self,money):

print('支付宝支付了%s'%money)

#苹果支付

classApplePay(object):

defpay(self,money):

print('苹果支付了%s'%money)

defpay(obj,money):

obj.pay(money)

weixin=WeChatPay()

alipay=AliPay()

applepay=ApplePay()

#调用者无需关心具体实现细节,可以一视同仁的处理实现了特定接口的所有对象

pay(weixin,100)

pay(alipay,200)

pay(applepay,300)

归一化使得高层的外部使用者可以不加区分的处理所有接口兼容的对象集合——就好象linux的泛文件概念一样,所有东西都可以当文件处理,不必关心它是内存、磁盘、网络还是屏幕(当然,对底层设计者,当然也可以区分出“字符设备”和“块设备”,然后做出针对性的设计:细致到什么程度,视需求而定)。

1

2依赖倒置原则:

高层模块不应该依赖低层模块,二者都应该依赖其抽象;抽象不应该应该依赖细节;细节应该依赖抽象。换言之,要针对接口编程,而不是针对实现编程

以上内容为大家介绍了Python抽象类和接口类,希望对大家有所帮助,如果想要了解更多Python相关知识,请关注IT培训机构:千锋教育。

声明:本站稿件版权均属千锋教育所有,未经许可不得擅自转载。

猜你喜欢LIKE

python如何实例化一个对象

2023-11-09

pythonspyder怎么切换Python版本

2023-11-09

python如何查看python安装包

2023-11-09

最新文章NEW

python到底是什么样的语言

2023-11-09

python如何显示当前路径

2023-11-09

python如何生成文件夹

2023-11-09

相关推荐HOT

更多>>

快速通道 更多>>

最新开班信息 更多>>

网友热搜 更多>>