您的位置:首页 > 编程语言 > Python开发

python基础(12)——继承

2018-01-14 22:27 423 查看
#继承 一个类可以获取另外一个类的所有成员

class Zhaoyun:
name = '赵云'
sex = '男'
def kanmen(self):
print('即使敌众我寡,也能取敌将首及')
def qima(self):
print('我的马跑得贼快')

class xiaoyun(Zhaoyun):
name = 'xiaoyun'

def no(self):
Zhaoyun.qima(self)
print('吃啥杀不胜')

super().kanmen()

#res = issubclass(Zhaoyun,object)
#print(res)

print(xiaoyun.__dict__)

result = xiaoyun()
result.no()

#多继承的实现(尽量少用)

#爷爷类
class YeYe:
def kaiche(self):
print('我没车')
#乃乃类
class NaiNai:
def bianduzi(self):
print('大脑不够用,小脑也不发达')

#老爷类:
class LaoYe:
def wun(self):
print('self 苦逼')

#tb类
class tb(NaiNai,YeYe,LaoYe)<
4000
/span>:#(多继承)
pass

hh = tb()
hh.bianduzi()
hh.kaiche()

#super() 用于表示MRO列表的上一个类
#super() 在单继承中就是表示父类名
class Animal:
def say(self):
print('Animal jiujiu~~~')
print('Animal diudiu~~~')

class Human(Animal):
def say(self):
print('Human jiujiu~~~')
super().say()
print('Human diudiu~~~')

class Bird(Animal):
def say(self):
print('Bird jiujiu~~~')
super().say()
print('Bird diudiu~~~')

class BirdMan(Human,Bird,Animal):
def say(self):
print('BirdMan jiujiu~~~')
super().say()
print('BirdMan diudiu~~~')

#实例化鸟人类对象
lzz = BirdMan()
lzz.say()

#父亲类
class Father:
familyName = 'wang'
firstName = 'xue'
#私有化封装
__wife =  'nikuaihuilai'
#手保护成员(不是语法而是约定俗称 )
_money = 455

def jinwanchiji(self):
print(self._money)
print('lalalla')

#实例化父亲对象
#fq = Father()
#fq.jinwanchiji()

class Child(Father):
def aaa(self):
print(Father._money)
print('afafasfas')
print(self._money)

#Child.aaa(1)
facai = Child()
facai.aaa()

print(facai._money)

Python学习交流、资源共享群:563626388 QQ
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  python