我有一个像
public class Grandpa...
public class Father extends Grandpa...
public class Son extends Father...
我想将其编码到带有propOrder批注的文件中。
所以我可以在爷爷上使用@XmlTransient并在父亲类上设置propOrder,但是
我如何将propOrder应用于所有3个类?
据我了解,“@ XmlTransient”方法仅适用于一个 super 类和一个子类?
最佳答案
在就类而言,当您在类上指定@XmlTransient
时,会将其从继承层次结构中删除,并且其属性被视为其子级的一部分。这意味着,如果您将Father
标记为 transient ,则可以将其属性包含在propOrder
的Son
中。如果将Grandpa
和Father
标记为 transient ,则可以将这两个类的属性都包括在propOrder
的Son
中。
如果没有@XmlTransient
,您仍然可以使用propOrder
,但是在该propOrder
中,您只能指定与该类相对应的属性。这对应于扩展复杂类型出现的元素顺序,继承的属性首先出现。
有关更多信息