我有一个抽象类和其他五个继承它的类 我想在这个抽象类中保存一个Dictionary实例 - 并让所有其他类能够在这个Dictionary中添加/删除值。
我更喜欢不将此词典定义为“静态”。
我该怎么做?
答案 0 :(得分:4)
将其定义为
受保护的词典d ...
它将对所有子类可见。
static关键字是错误的选择,因为它定义了与该类的所有实例共享的字典。这是完全不同的事情
答案 1 :(得分:1)
更好的方法是使用一个单独的Singleton类来保存您的字典,并使该单例类成为基类的属性。这样可以避免使用static,同时确保封装字典的单例类的一个实例。使其成为抽象类的受保护成员,允许访问包含字典的类的单个实例的所有子类。