java loop over class properties

‮tual.www‬turi.com
java loop over class properties
/**
 * @author lautturi.com 
 * Java example: loop through all properties in java class
 */

import java.util.*;
import java.lang.reflect.*;

public class Lautturi {
	static <T> void inspect(Class<T> klazz) {
        Field[] fields = klazz.getDeclaredFields();
        System.out.printf("%d fields:%n", fields.length);
        for (Field field : fields) {
            System.out.printf("%s %s %s%n",
                Modifier.toString(field.getModifiers()),
                field.getType().getSimpleName(),
                field.getName()
            );
        }
    }

	public static void main(String[] args) {
		
		inspect(String.class);
		inspect(ArrayList.class);
		
	}
}

output:

9 fields:
private final byte[] value
private final byte coder
private int hash
private static final long serialVersionUID
static final boolean COMPACT_STRINGS
private static final ObjectStreamField[] serialPersistentFields
public static final Comparator CASE_INSENSITIVE_ORDER
static final byte LATIN1
static final byte UTF16
7 fields:
private static final long serialVersionUID
private static final int DEFAULT_CAPACITY
private static final Object[] EMPTY_ELEMENTDATA
private static final Object[] DEFAULTCAPACITY_EMPTY_ELEMENTDATA
transient Object[] elementData
private int size
private static final int MAX_ARRAY_SIZE
Created Time:2017-09-26 21:22:32  Author:lautturi