Java中有"智能指针"吗?

gar*_*ima 9 java smart-pointers

Java中的C++智能指针是否还有什么?

jjn*_*guy 14

所有Java的"指针"(参考)都是智能指针.

Java在托管环境中运行.这意味着Java使用垃圾收集器来清理不再引用的变量.

Java的引用虽然与指针略有不同.Java抽象出你在C++中看到的所有指针值和数学.因此,无论何时创建新对象并将其存储到变量,您都将其存储到Java的"智能指针"版本中.


sfu*_*ger 7

我只听说过内存管理方面的智能指针.由于内存管理是Java平台的核心,显然没有必要.

我们想到的最接近的匹配是java.lang.ref.WeakReference和java.lang.ref.SoftReference,因为它们允许在某种程度上自定义垃圾收集.


Nei*_*eil 6

是的,不是.不,在Java中不存在像指针对象那样的东西.是的,因为每个物体都是一个"智能指针",这意味着它可以进行垃圾收集,并可以照顾自己的生命.