checkstyle, junittest passed, refactoring