# -*- coding: utf-8 -*-
"""
继承的意义:实现代码重用,数据函数都可以重用
子类覆盖,子类与父类同名
选择性继承
super().__init__()可以减少重复构造,节约资源
"""
class Wangjianlin(object):
"""大家好,我是大连王健林"""
def __init__(self):
self.motto = "我是王健林,我的人生格言是,先定个小目标,赚他一个亿"
self.money = 200e8
def working(self):
print("疯狂工作")
class Wangsicong(Wangjianlin):
def __init__(self):
#Wangjianlin是类型,调用方法需要self,super()是一个对象
#Wangjianlin.__init__(self)#这种方式在频繁创建对象时比较消耗内存
super().__init__()
self.motto = "我是王思聪,我的人生格言是,我交朋友不看钱,因为谁都没有我有钱"
def working(self):
print("我有钱,想泡谁就泡谁")
if __name__ == "__main__":
#继承测试
wangjianlin = Wangjianlin()
print(wangjianlin.money, wangjianlin.motto)
wangjianlin.working()
wangsicong = Wangsicong()
print(wangsicong.money, wangsicong.motto)
wangsicong.working()
print("-" * 50)
# 类的内置属性
print(Wangjianlin.__doc__)#类的说明文档
print(Wangjianlin.__name__)#类的名字
print(Wangjianlin.__module__)#从哪个地方开始执行
print(Wangjianlin.__bases__)#类的基类
print(Wangjianlin.__dict__)#类的属性
print(isinstance(2, int))#判断2是否是int类型
print(isinstance(2, (int, str)))#判断2是否是int类型或者str类型其中之一