在java中取消String是否是一个好习惯
这个问题在这里已经有了答案:
否。忽略一个字符串只会使引用脱钩 。 但是这个值仍然会存在于字符串池中。 由于为了节省内存,字符串值保留在字符串池中。
任何潜在的黑客都可以通过访问字符串池来获取价值。
而使用char [],您可以简单地将该对象视为任何其他对象。 并且取消char对象将在垃圾回收时清除堆中的数据。
一个更好的选择将使用一个字节数组。
阅读更多关于字符串常量池。
如果你想要绝对安全,不需要。 排除字符串不是正确的解决方案。
其原因是将它归零无法保证字符串不再可用。 尽管它可能会使垃圾收集的可能性更大(并且这只是一个'可能'),但不能保证垃圾收集的时间(或者甚至是)。
您应该使用字节数组或char数组,然后在完成时清空数组中的每个元素。
链接地址: http://www.djcxy.com/p/17885.html