XInitialization
From Apache OpenOffice Wiki
com.sun.star.lang.XInitialization 接口通常要手动实现,因为只有程序员了解如何通过使用 createInstanceWithArguments()
或 createInstanceWithArgumentsAndContext()
从服务管理器接收到的参数对对象进行初始化。在 Java 中,也使用 XInitialization
,但是 Java 工厂帮助程序可以提供一个使用参数的快捷方式,而不必直接实现 XInitialization
。在特定情况下,Java 工厂帮助程序可以将参数传送到类的构造函数。如果需要更多信息,请参阅 编写 UNO 组件 - Java 中的简单组件 - 使用参数创建实例。
XInitialization
的规范如下所示:
// module com::sun::star::lang interface XInitialization : com::sun::star::uno::XInterface { void initialize(sequence< any > aArguments) raises (com::sun::star::uno::Exception); };
老样式 UNOIDL 服务规范通常会说明哪些参数要在 any 序列中使用以及其顺序。
随着具有显式构造函数的新样式服务规范的出现,现在在创建对象时可以清楚地声明要将哪些函数传递给对象。在构造函数中列出的参数就是传递给 XInitialization.initialize
的参数(目前,不同语言绑定在内部使用 XInitialization
来实现服务构造函数;不过,这种情况在将来也许会有所改变)。
Content on this page is licensed under the Public Documentation License (PDL). |