博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
python程序设计——面向对象程序设计:继承
阅读量:4946 次
发布时间:2019-06-11

本文共 1749 字,大约阅读时间需要 5 分钟。

继承是为代码复用和设计复用而设计的

在继承关系中,已有的、设计好的类称为父类或基类,新设计的类为子类或派生类

派生类可以继承父类的公有成员,但不能继承其私有成员

如果需要在派生类中调用基类的方法,可以使用内置函数super()或者通过 基类名.方法名() 实现

---------------------------------------------------------------------------

python支持多继承,如果父类中有相同的方法名,而在子类中使用时没有指定父类名,

则python解释器将从左到右按顺序搜索

# 定义基类class Person(object):    # 必须以object为基类    def __init__(self,name='',age=20,sex='man'):        self.setName(name)        self.setAge(age)        self.setSex(sex)            def setName(self,name):        if not isinstance(name,str):            print('name must be string.')            return        self.__name=name            def setAge(self,age):        if not isinstance(age,int):            print('age must be integer.')            return        self.__age=age            def setSex(self,sex):        if sex != 'man' and sex != 'woman':            print('sex must be "man" or "woman".')            return        self.__sex = sex            def show(self):        print('name:',self.__name)        print('age:',self.__age)        print('sex:',self.__sex)# 定义派生类,并调用基类方法class Teacher(Person):    def __init__(self,name='',age=30,sex='man',id=215):        super(Teacher,self).__init__(name,age,sex)        self.setId(id)            def setId(self,id):        if not isinstance(id,int):            print('id must bu integer.')            return        self.__id = id        def show(self):        super(Teacher,self).show()    # 调用基类的方法        print()        if __name__=='__main__':    zhangle = Person('zhang le',19,'man')    zhangle.show()    limu = Teacher('li mu',32,'man',233)    limu.show()    limu.setId(666)    limu.show() out:
name: zhang leage: 19sex: manname: li muage: 32sex: manname: li muage: 32sex: man

 

转载于:https://www.cnblogs.com/feinaio2017/p/8955089.html

你可能感兴趣的文章
第二次作业——结对项目之需求分析与原型设计
查看>>
c++实验7 二叉树
查看>>
创建一个node.js express类型的app
查看>>
项目营销
查看>>
夹角有多大(题目已修改,注意读题)
查看>>
PAT 1007. 素数对猜想
查看>>
ORACLE基本语法
查看>>
BZOJ1036;[ZJOI2008]树的统计
查看>>
激活码
查看>>
php 获取优酷视频的真实地址(2014.6月新算法)
查看>>
SQL数据库知识二(Day 25)
查看>>
WPF 入门笔记之事件
查看>>
IT实用技术资源整理
查看>>
12-转盘
查看>>
C:forEach
查看>>
dubbo详解及demo实例
查看>>
在Parallels中Ubuntu 14.04的桌面不正常问题
查看>>
Win7 64位硬盘安装Ubuntu 64位的细微配置
查看>>
keystore和truststore
查看>>
【Luogu】P3396哈希冲突(根号算法)
查看>>