其他分享
首页 > 其他分享> > day-23-类的空间问题-类和类的关系

day-23-类的空间问题-类和类的关系

作者:互联网

一、类的空间问题

二、类与类之间的关系

依赖关系

将一个类的对象或者类名传到另一个类的方法使用,我用你,但是你不属于我,这种关系是最弱的。

比如:

以看书为场景,场景中出现了人和书两种事物,人负责整个事件的掌控者,书负责被人操控。

class Person:
​
    def __init__(self, name):
        self.name = name
​
    def open_book(self, b_name):
        print(f'{self.name}打开了一本名为{b_name}的书')
​
    def cloes_book(self, b_name):
        print(f'{self.name}合上了一本名为{b_name}的书')
​
​
class Book:
    def __init__(self, name):
        self.name = name
​
    def open():
        print('书被打开了')
​
    def close():
        print('书被打开了')
​
​
Bob = Person('鲍勃')
literature_book = Book('语文')
math_book = Book('数学')
Bob.open_book(literature_book.name) # 鲍勃选择打开的是语文书
# 输出
鲍勃打开了一本名为语文的书

 

关联,聚合,组合关系

这三个在代码上写法是一样的,但是,从含义上是不一样的。

  1. 关联关系:两种事物必须是互相关联的,但是在某些特殊情况下是可以更改和跟换的。其实就是 我需要你. 你也属于我

  2. 聚合关系:属于关联关系中的一种特列,侧重点事xxx和xxx聚合成xxx,各自有各自的声明周期,比如电脑,电脑里有CPU,硬盘,内存等等,电脑挂了,CPU还是好的,还是完整的个体

  3. 组合关系:也是属于关联关系中的一种特列,写法上差不多,组合关系比聚合还要紧密,比如人的大脑,心脏,各个器官,这些器官组合成一个人,这时,人如果挂了,其他东西也跟着挂了

标签:__,name,23,self,类和类,teacher,print,day,def
来源: https://www.cnblogs.com/XiaoYang-sir/p/14725930.html