如何实现两个类的关联 支持跨类调用另一类的属性及对应值
类关联实现方案(Python示例)
核心关联思路:在practice_doctor类中新增一个带教医生属性,直接绑定Doctor类的实例,即可直接调用Doctor实例的属性值,属于低耦合的对象组合关联方式。
完整可运行代码
# 定义Doctor类 class Doctor: def __init__(self, name): self.Name = name # 定义practice_doctor类 class practice_doctor: def __init__(self, p_name, supervisor): self.p_name = p_name # 绑定带教医生的Doctor实例,完成类关联 self.supervisor = supervisor # 定义无返回值的打印方法 def print_info(self): print(f"the doctor {self.supervisor.Name} is practice doctor {self.p_name}") # main执行逻辑 if __name__ == "__main__": # 实例化Doctor类并赋值 doctor_jack = Doctor("jack") # 实例化实习医生类,传入带教医生实例完成关联 practice_mick = practice_doctor("mick", doctor_jack) # 调用打印方法 practice_mick.print_info()
逻辑说明
- 类关联实现:通过在
practice_doctor构造方法中接收Doctor实例作为参数,存储为自身属性,实现两个类实例的一对一绑定 - 方法调用逻辑:打印方法直接读取自身
p_name属性,以及关联的supervisor实例的Name属性,拼接输出要求的字符串 - 运行输出结果:
the doctor jack is practice doctor mick,完全符合需求
内容的提问来源于stack exchange,提问作者husseinK
相关产品推荐
相关产品推荐

