假设我有一个带有静态字段且具有默认值设置的类:
public class MyClass {
public static int numb = 10;
}
现在,在程序运行时,如何检查
MyClass
的numb
字段是否设置为其默认值(在本例中为10
)?从我的角度来看,在代码中,我不知道该字段默认设置为什么,并且我不是设置该字段的人,因此我无法“简单地检查
numb == 10
”。我必须能够检查它是否设置为与源代码中所声明的完全相同。 最佳答案
克鲁夫(Kröw),在您对问题的最新澄清之后,以下内容是否满足您的要求?
public class MyClass {
public static int numb = 10;
}
public class MyTest {
private static int default_numb = MyClass.numb;
public static boolean isChanged() {
return MyClass.numb != default_numb;
}
public static void main(String[] args) {
System.out.println(isChanged() + " " + MyClass.numb);
MyClass.numb = 20;
System.out.println(isChanged() + " " + MyClass.numb);
MyClass.numb = 10;
System.out.println(isChanged() + " " + MyClass.numb);
}
}
运行MyTest的输出是:
$ java MyTest
false 10
true 20
false 10