don't reflect on private fields, don't prefer fields with both a field and a method have the same name, should fix IBM JDK issues