在这里查看一些Fortify的发现,它告诉我不要对敏感数据使用字符串数据类型,因为它们可能会在内存中停留太长时间.如果存在无关的内存攻击,例如Heartbleed,则会暴露用户的数据.
如果我在使用后将字符串var设置为null,那么该内存位置是否实际被清除,或者是为存储null而创建的var的副本?
谢谢
我想你问的是错误的问题.
如果将变量设置为null,则确定该引用指向null.原始值可以是垃圾回收.
问题是字符串比这复杂一点.你应该问的问题是为什么其他字符串可以留在记忆中?
答案就是String文字池.谷歌是你的朋友,但这是一个不错的开始:
什么是Java字符串池以及"s"与新String("s")有何不同?
| 归档时间: |
|
| 查看次数: |
207 次 |
| 最近记录: |