实例方法直接返回静态成员还时返回静态成员的copy
我的一个类里有静态成员,这个类的实例方法要返回这个静态成员(因为在这个方法中要判断缓存中是否已经给静态成员赋值)给别的方法或直接返回静态成员给其他类,那么我在返回时,是直接返回静态成员还时返回静态成员的copy
静态成员用于内存中的缓存,生成这个静态成员时使用了Monitor.Enter
我反编译了些代码学习,我看里面返回时常常使用copy,为什么要使用copy呢?
菜鸟一个,希望老大们百忙中回复一下,非常感谢!
------解决方案--------------------返回什么都可以。
返回copy,通常是对引用类型的对象进行一定程度的保护,避免被使用者随意修改某些内容。所以只给一个copy。