Test if a class contains an instance variable based on its name

后端 未结 2 1176
渐次进展
渐次进展 2020-12-02 02:19

Sometimes I need to test which class has declared some variable(s), is there another way how to test that, if concrete class contains variable with some name



        
2条回答
  •  有刺的猬
    2020-12-02 02:44

    If I understand correctly, you use this code in a superclass to test if a subclass has a testVariable field.

    Why don't you simply add a method like this?

     /**
      * Returns true if the object declares a testVariable field, false otherwise. Subclasses should
      * override this method
      */
    protected boolean hasTestVariableField() {
        return false;
    }
    

    Seems much more OO to me, doesn't break encapsulation.

    That said, I've not really understood why you needed this in the first place.

提交回复
热议问题