zoukankan      html  css  js  c++  java
  • (一)Python入门-6面向对象编程:12组合

    组合:

      “is-a”关系,我们可以使用“继承”。从而实现子类拥有的父类的方法和属性。“is-a” 关系指的是类似这样的关系:狗是动物,dog is animal。狗类就应该继承动物类。

      “has-a”关系,我们可以使用“组合”,也能实现一个类拥有另一个类的方法和属性。” has-a”关系指的是这样的关系:手机拥有 CPU。 MobilePhone has a CPU。

    【操作】

    #测试组合
    import copy
    class MobilePhone:
        def __init__(self,cpu,screen):
            self.cpu = cpu
            self.screen = screen
    
    class CPU:
        def calculate(self):
            print('计算。。。。。')
    
    class Screen:
        def show(self):
            print('显示。。。。。')
    
    c = CPU()
    s = Screen()
    m = MobilePhone(c,s)
    
    m.cpu.calculate()   #通过组合,调用cpu对象的方法,相当于手机对象间接拥有了‘cpu的方法’
    m.screen.show()     #通过组合,调用screen对象的方法,相当于手机对象间接拥有了‘screen的方法’

    运行结果:

      计算。。。。。
      显示。。。。。

  • 相关阅读:
    Python 爬取网易云歌手的50首热门作品
    对于AES和RSA的个人理解
    sqlzoo
    项目部署 uwsgi+nginx+crm
    nginx学习
    redis补充知识--- 缓存击穿、缓存雪崩、缓存穿透
    redis-cluster 搭建
    redis主从复制
    redis-sentinel (哨兵)
    redis 发布订阅
  • 原文地址:https://www.cnblogs.com/jack-zh/p/10850332.html
Copyright © 2011-2022 走看看