static void main(String args[]) { field_function("this is a string and has field called 'data'");}static void field_function(Object objectWithFields) { Class cls = objectWithFields.getClass(); Field[] field_array; field_array = cls.getDeclaredFields(); for (int i = 0; i < field_array.length; i++) { String string_var = ""; //field_array[i].setAccessible(true); string_var = field_array[i].getType().getName(); }//for loop for fields System.out.println("\n\n++++++---Variable Definition's [Type Modifier,Name,Value]---++++++\n"); for (int i = 0; i < field_array.length; i++) { //MAKE SURE NOT TO ACCESS PRIVATE OR PROTECTED FIELDS //ELSE RUN TIME ERROR WILL OCCUR. Class ctmp = cls; ctmp = field_array[i].getType(); int mthd = field_array[i].getModifiers(); //field_value works as returns name of that field. Object value = field_array[i].get(objectWithFields); String obj_value = ""+value; System.out.println("\t"+Modifier.toString(mthd)+" "+ field_array[i].getType().getName()+" "+field_array[i].getName()+" = "+obj_value); }//for}