Java里有垃圾回收的物事(issue),Lotus Notes中的Java当然也有。垃圾回收在Java语言里有专门论述,对Lotus Notes里的Java程序都是适用的。只不过Lotus Notes中的Java程序与一般所说的Java程序相比,有些特殊,其垃圾回收也有值得说明之处。
Lotus Notes中的Java程序,可以分为两类。一是传统客户端或Web应用中,用Java写的代理。这几乎是传统Lotus Notes程序能够使用Java的唯一场合(如果排除Web Service则就是)。主要是为了利用Java与LotusScript相比更强大的功能和丰富的类库,往往用于开发与其他系统的接口。二是Xpages出现后,以Bean的形式开发业务逻辑。与使用服务器端JavaScript相比的好处,在22. 为什么要在XPages中写Java里已经详述。
这两类Java程序,特别是前者,的最大特点,就是主要围绕Domino对象展开。我们要说明的垃圾回收问题,也是针对这些Domino对象。Lotus Notes程序的核心就是操纵Notes数据库的各种对象,从数据库、视图、文档一直到域。这些功能是用C语言开发的,并且提供了C++的接口,使用这两种语言接口的开发包都可以从IBM网站上下载。我们大量使用的LotusScript,访问Domin