Java中的合成字段是什么?
有人能用一种简单易懂的方式解释Java中合成字段的重要性吗。我记得在非静态内部类的上下文中读过它,其中每个这样的内部类实例都维护对封闭类的引用。为什么这样的引用/字段称为合成字段?合成字段是编译器创建的字段,它将局部内部类链接到块的局部变量或引用类型参数。编译器合成某些隐藏字段和方法以实现名称的作用域。除非另有说明,否则这些字段是私有的,或者它们最多在包范围内。您可以在中获得更多信息和信息 源代码中未出现的类成员必须使用合成属性进行标记,否则必须设置其ACC_合成标志。此要求的唯一例外是编译器生成的方法,这些方法不被视为实现工件,即表示Java编程语言默认构造函数的实例初始化方法(§2.9)、类初始化方法(§2.9)以及Enum.values()和Enum.valueOf()方法Java中的合成字段是什么?,java,compiler-construction,field,inner-classes,synthetic,Java,Compiler Construction,Field,Inner Classes,Synthetic,有人能用一种简单易懂的方式解释Java中合成字段的重要性吗。我记得在非静态内部类的上下文中读过它,其中每个这样的内部类实例都维护对封闭类的引用。为什么这样的引用/字段称为合成字段?合成字段是编译器创建的字段,它将局部内部类链接到块的局部变量或引用类型参数。编译器合成某些隐藏字段和方法以实现名称的作用域。除非另有说明,否则这些字段是私有的,或者它们最多在包范围内。您可以在中获得更多信息和信息 源代码中未出现的类成员必须使用合成属性进行标记,否则必须设置其ACC_合成标志。此要求的唯一例外是编译器生
“合成字段是编译器创建的字段,它将局部内部类链接到块的局部变量或引用类型参数”…我不理解这一行的含义。一个代码示例会有所帮助。你可以查看这个代码示例。所以,如果我要通过字段上的反射创建克隆,我必须跳过它们,对吗?@AquariusPower是的,你应该这样做