在我的类的构造函数中,我将当前对象(this)连同它的键(在构造函数中作为参数输入的字符串)映射到静态 LinkedHashMap 中,这样我就可以在以后可能需要的任何地方通过字符串引用对象.
这是代码(如果有帮助):
public class DataEntry {
/** Internal global list of DataEntry objects. */
private static LinkedHashMap _INTERNAL_LIST;
/** The data entry's name. */
private String NAME;
/** The value this data entry represents. */
private Object VALUE;
/** Defines a DataEntry object with a name and a value. */
public DataEntry( String name, Object value )
{
if( _INTERNAL_LIST == null )
{
_INTERNAL_LIST = new LinkedHashMap();
}
_INTERNAL_LIST.put( name, this );
NAME = name;
VALUE = value;
}
}
问题?当我使用完此类的实例时,它们不会被垃圾收集。
我只是好奇是否有办法让这个类的实例在我用完它们后自行清理,而不必每次都手动调用 Remove() 方法或其他东西(当我在内部 LinkedHashMap 中删除它的引用时) '不再使用它们,我的意思是)。