Android studio android studio中出现了一个奇怪的字段

Android studio android studio中出现了一个奇怪的字段,android-studio,pojo,Android Studio,Pojo,我有一门pojo课 运行此代码 Field[] fields = clazz.getDeclaredFields(); 我在Android Studio的IDE下找到了一个字段: 它的类型是interfacecom.android.tools.fd.runtime.IncrementalChange 它的名字是$change 我的Android Studio版本是2.0预览版4 当我在eclipse中运行代码时,它工作正常 这个领域是从哪里来的? 如何避免此字段,Android Studio

我有一门
pojo

运行此代码

Field[] fields = clazz.getDeclaredFields();
我在Android Studio的
IDE下找到了一个字段:

它的类型是interface
com.android.tools.fd.runtime.IncrementalChange
它的名字是$change

我的Android Studio版本是2.0预览版4

当我在eclipse中运行代码时,它工作正常

这个领域是从哪里来的?
如何避免此字段,Android Studio中是否有一些设置?

添加此字段很可能是为了支持Android Studio 2.0中添加的即时运行功能,如果您关闭Instant Run,则不会出现此问题。

我们可以通过使用合成修改器检查来解决此问题,而不是关闭Instant Run。”com.android.tools.fd.runtime.IncrementalChange'是合成的,因此我们可以使用issyntrac方法检查字段是否是合成的

Field[] fields = objClass.getFields();
for (Field field : fields) {
            String name = field.getName();
            Object value;

            if(field.isSynthetic()){
                continue;
            }
          //add your code here
            }

我认为Diorna的答案是最好的。安装运行是Android Studio的新功能,我不会关闭它

我在sdk库中使用JsonTool,当我使用androidStudio2.2 JsonTool运行我的应用程序时。objectToJson()给我一个错误的json字符串,我添加代码
如果(name.contains(“this$”)| | field.isSynthetic())继续


解决它

太好了!在设置SearchInstant Run时,有一个复选框,默认值是选中的。当我检查它时,字段消失了!谢谢不适合我<代码>java for(字段:raw.getDeclaredFields()){if(Field.isSynthetic()){continue;}Field.setAccessible(true);