第十一章 重新定义读取器处理相关对象的方式
重新定义读取器处理相关对象的方式
当%XML.Reader
找到与启用了XML的类相关的XML元素时,读取器会调用该类的XMLNew()
方法,后者又会在默认情况下调用%New()
。也就是说,当读取器找到相关元素时,它会创建相关类的新对象。新对象由从XML文档读取的数据填充。
可以通过在启用XML的类中(或在自己的自定义XML适配器中)重新定义XMLNew()
来自定义此行为。例如,此方法可以改为打开该类的现有实例。然后,现有实例接收从XML文档读取的数据。
以下示例显示如何修改XMLNew()
以使用XML文档中的新数据更新现有实例。
在这两个示例中,为简单起见,我们假设XML文档中的一个节点包含一个ID,我们可以将该ID与类的范围中的ID进行比较。当然,我们可以用其他方式将XML文档与现有对象进行比较。