python学习(四)组合

1、组合:把类的实例化放到新类中,即组合。(具有横向关系的类放到一起需要组合,具有纵向关系的类放到一起需要继承)

class Turtle:                     # 不实例化则不需要加括号
    def __init__(self, x):
        self.num = x

class Fish:
    def __init__(self, x):
        self.num = x

class pool:
    def __init__(self, x, y)
        self.Turtle = Turtle(x)
        self.Fish = Fish(y)
       
    def print_num(self):
        print("水池里一共有乌龟 %d 只, 小鱼 %d 条!" % (self.Turtle.num, self.Fish.num))

pool = pool(1,10)
pool.print_num()

2、类,类对象、实例对象

类:定义某一个类。(在未写完之前)

类对象:写完类之后就是一个对象。

 

 类定义中类是一个静态对象。如果属性的名字跟方法名重名,则会报错。故类定义应尽量使用组合和继承机制,避免bug.类型错误,不能调用。

 3、绑定:

        要求方法需要有实例才能被调用,这种限制其实就是python所谓的绑定概念。

 实例化对象(bb,类对象是BB;bb = BB())时,对象需要添加self参数,才可调用。

查看实例化对象的属性:

        

        实例化对象的属性是字典,类对象属性是个字典,仅有实例化对象的属性,不显示类对象的属性和特殊属性(像魔法方法)。(键,属性名;属性对应的值)

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

。七十二。

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值