检查是否已设置类中的任何属性

Kin*_*isG 2 java

我想知道是否有更简单的方法来进行简单检查 - 我希望能够检查任何对象,并查看是否至少设置了其中一个属性(不等于null).目前我可以使用反射来获得所有字段并逐个检查,但这非常慢.还有另一种方法吗?

我能想到的唯一(有点hacky)方法是创建一个新的Object,其中所有属性都应初始化为null,并检查另一个对象是否等于它

任何帮助深表感谢!

Joe*_*son 6

你可以写一个界面 NullCheckable

public interface NullCheckable {
    boolean areAllPropertiesNull();
}
Run Code Online (Sandbox Code Playgroud)

然后,您希望能够检查的每个类都使用适当的方法实现此接口,例如

public class Class1 implements NullCheckable {

    private Object property1;

    public Object getProperty1() {
        return property1;
    }

    @Override
    public boolean areAllPropertiesNull() {
        return property1 == null;
    }

}
Run Code Online (Sandbox Code Playgroud)