public Field[] getFields(Class parentClass, boolean isDeclared, String... strings) throws NoSuchFieldException {
        Field[] fields = new Field[strings.length];

        for (int len = 0; len < strings.length; ++len) {
            String string = strings[len];
            if (string != null || string != "") {
                if (isDeclared) {
                    fields[len] = parentClass.getDeclaredField(string);
                } else {
                    fields[len] = parentClass.getField(string);
                }
            }
        }

        Field[] fields1 = null;
        int length = 0;
        for (int len = 0; len < fields.length; ++len) {
            if (fields[len] != null) {
                if (fields1 == null) fields1 = new Field[1];
                else fields1 = new Field[length + 1];

                fields1[length] = fields[len];

                ++length;
            }
        }
        return fields1;
    }