假设我有三个类:Outer,Inner1和Inner2。 Inner1和Inner2都需要访问 来自Outer的数据成员,但显然如果Inner1和Inner2嵌套在Outer中,则无法从Outer访问数据。关于我应该如何重新设计的任何想法?
更多信息: Outer的每个实例都与Inner1和Inner2的多个实例相关联。 Inner1表示曲线上的点(曲线为外),Inner2表示"数字"这是Inner2的x,y坐标。它们共享一条数据,即质数模数(而Inner1需要有关曲线参数的信息)。
我更希望Inner1和Inner2的每个实例都不必随身携带。
答案 0 :(得分:1)
在Python中,与Java不同,嵌套类没有外部类的关联实例,因此无法从外部类访问数据。
实现此目标的一种方法是让Inner1
和Inner2
保持对Outer
实例的引用,并使用该引用来访问数据。当你在这里时,可能值得考虑嵌套这些类是否有任何好处;也许让他们彼此并存可能会更清洁。