fix 3 potential problems detected by FindBugs
replace anonymouse classes with local classes and avoid synthetic-access
in order to reduce nameless class files (with refactoring)
update documents