public enum RelationType extends Enum<RelationType>
注解属性的关系类型
若将被Link注解的属性称为“原始属性”,而在Link注解中指向的注解属性称为“关联属性”,
则该枚举用于描述“原始属性”与“关联属性”在SynthesizedAggregateAnnotation处理过程中的作用关系。
根据在Link.type()中指定的关系类型的不同,通过SynthesizedAggregateAnnotation合成的注解的属性值也将有所变化。
当一个注解中的所有属性同时具备多种关系时,将依次按下述顺序处理:
Alias注解;Link注解,且Link.type()为MIRROR_FOR;Link注解,且Link.type()为FORCE_ALIAS_FOR;Link注解,且Link.type()为ALIAS_FOR;SynthesizedAggregateAnnotation,
Link| 枚举常量和说明 |
|---|
ALIAS_FOR
表示“原始属性”将作为“关联属性”的别名。
|
FORCE_ALIAS_FOR
表示“原始属性”将强制作为“关联属性”的别名。
|
MIRROR_FOR
表示注解的属性与指定的属性互为镜像,通过一个属性将能够获得对方的值。
|
public static final RelationType MIRROR_FOR
表示注解的属性与指定的属性互为镜像,通过一个属性将能够获得对方的值。
它们遵循下述规则:
MIRROR_FOR的Link注解指定对方;public static final RelationType ALIAS_FOR
表示“原始属性”将作为“关联属性”的别名。
public static final RelationType FORCE_ALIAS_FOR
表示“原始属性”将强制作为“关联属性”的别名。效果等同于在“原始属性”上添加Alias注解,
任何情况下,获取“关联属性”的值都将直接返回“原始属性”的值
public static RelationType[] values()
for (RelationType c : RelationType.values()) System.out.println(c);
public static RelationType valueOf(String name)
name - 要返回的枚举常量的名称。IllegalArgumentException - 如果该枚举类型没有带有指定名称的常量NullPointerException - 如果参数为空值Copyright © 2022. All rights reserved.