我是靠谱客的博主 友好心锁,最近开发中收集的这篇文章主要介绍python3 - 关于重用、重写、重载,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

重用

重用是用于在对象的概念中,实现代码的重用性

在继承角度,在子类继承父类之后,重新使用父类属性方法即是代码的重用

在组合角度,在一个类中以另外一个类的对象作为数据属性,提高代码的重用性

重用的方式:

   继承:

            方式一:指名道姓的应用某一个类中的函数(无关继承,访问函数不存在自动传值)

                例如:CollegePeople.__init__(self, name, age, sex)

            方式二:使用内置方法super(),返回特殊对象访问属性(严格依赖mro列表,存在自动传值)

                例如:super().__init__( name, age, sex)

   组合:通过为某一个对象添加属性的方式,间接将两个类进行关联,减少类与类代码冗余

class Foo:
xxx = 222
class Bar:
yyy = 111
obj = Foo()
b = Bar()
obj.attr = Bar()
obj.a = b
obj.xxxx #调用Foo内属性
obj.attr.yyyy #调用Bar内属性

 

重写

重写用于继承概念下,子类继承父类需要同名的不同函数,即可修改重写同名方法。

例如:

class Parent:
# 定义父类
def myMethod(self):
print '调用父类方法'
class Child(Parent): # 定义子类
def myMethod(self):
print '调用子类方法'
c = Child()
# 子类实例
c.myMethod()
# 子类调用重写方法

 

重载

重载是,函数或者方法有相同的名称,但是参数列表不相同(类型不同,数量不同,位置不同)的情形,这样的同名不同参数的函数或者方法之间,互相称之为重载函数或者方法。

python的实现过程中可能存在重载,但是在Python的呈现使用中不存在重载的概念。

原因:python 可以接受任何类型的参数,而对那些缺少的参数设定为缺省参数即可解决问题。即,python中参数传递时候的*arg和**kwargs

 

 

最后

以上就是友好心锁为你收集整理的python3 - 关于重用、重写、重载的全部内容,希望文章能够帮你解决python3 - 关于重用、重写、重载所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(33)

评论列表共有 0 条评论

立即
投稿
返回
顶部