Oli*_*ver 5 java memory performance android
我创建了一个静态的类,这个类不会持久化状态(不保留上下文或任何变量)只是一个函数列表.但是这个类在应用程序中并没有被使用,所以我决定使类可实现.
为什么?
因为我认为可实例化的类会占用较少的内存,因为它在整个应用程序生命周期中都不可用.
这是正确的吗?
静态类比非静态类使用更多内存?
谢谢
Jon*_*eet 10
我认为你误解了课程的运作方式.在应用程序的整个生命周期中,任何类别都是"可用的".用于类本身的内存(方法等)与实例使用的内存非常不同.除非你真的创建了一个类的实例,否则它是无关紧要的.甚至可以实例化静态类 - 只是它们不维护对封闭类的实例的隐式引用.
如果你的类实际上并不需要隐式引用(即它不使用它),那么使它成为一个静态嵌套类 - 或者将它作为顶级类拉出来.(嵌套类有时会很痛苦 - 顶级类的规则更简单.)