HibernateTemplate$1的问题

来源:百度知道 编辑:UC知道 时间:2024/06/14 05:18:59
我在Spring.jar包中看到了一个类名为hibernatetemplate$1的类,其中的实现为:
class 1
implements HibernateCallback
{
private final Object val$entity;
private final HibernateTemplate this$0;

public Object doInHibernate()
{
return ((session.contains(this.val$entity)) ? Boolean.TRUE : Boolean.FALSE);
}
}
为什么实现是不是public class HibernateTemplate$1而是class 1
还有定义了一个final HibernateTemplate this$0,应该怎么理解?

这个是匿名内类,原代码是这样的:

class HibernateTemplate {
private final Object entity;
HibernateCallback callback = new HibernateCallback() {
public Object doInHibernate() {
return ((session.contains(entity)) ? Boolean.TRUE : Boolean.FALSE);
}
}
}

其中的this$0指的是包含这个内在对象的外在类HibernateTemplate的对象。