Python简化类例一:实现在类的定义、继承、重写

# -*- coding: utf-8 -*
'''
前言:这是我自己想出来的方法,我不知道是否有人用过这种写类的方法,我也没想出一个什么样名字来称呼它,反正我叫它简化类
之所以称之为简化类,是因为我没办法实现多重继承,但类的基本继承,重写还是实现了的
如果有兴趣的朋友请留下您保贵的建议或加我QQ:410177254 或 微信:carmelcarmen,让这个写法能更有创造性一些
'''
#Python简化类例一:实现在类的定义、继承、重写

def ClassTest1A(name):
    '''
    简化单并不是像教科书上说的通过class来定义,ClassTest1是类名,而o为类的实例,而构造方法直接写在ClassTest1上
    简化类写法没有构造方法,整个代码段,只要不是和变量、方法定义相关的代码,都可以算是一个构造方法中运行的部份
    '''
    def o():pass

    print("这里可以是ClassTest1中的构造方法")

    def showName():
        print("我的名字是%s"%name)
    o.showName=showName;del showName
    def showAge():
        print("我的年龄不告诉你")
    o.showAge=showAge;del showAge

    print("这里可以也可以是ClassTest1中的构造方法")

    return o

def ClassTest1B(name,age):
    '''ClassTest1B是ClassTest1A的子类,继承了showName方法,并重写了showAge方法'''
    o=ClassTest1A(name)
    def showAge():
        print("我的年龄是%d"%age)
    o.showAge=showAge;del showAge

    print("这里是ClassTest2中的构造方法")
    return o

t11=ClassTest1A("蔡彦铭")
t12=ClassTest1B("小蔡蔡",6)

t21=ClassTest1A("老王")
t22=ClassTest1B("小王",7)

t11.showName() #我的名字是蔡彦铭
t11.showAge()  #我的年龄不告诉你
t12.showName() #我的名字是小蔡蔡
t12.showAge()  #我的年龄是6

t21.showName() #我的名字是老王
t21.showAge()  #我的年龄不告诉你
t22.showName() #我的名字是小王
t22.showAge()  #我的年龄是7

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值