首先推荐google的编码规范，其次，关于class member ordering的问题，google的解释是：The ordering of the members of a class can have a great effect on learnability, but there is no single correct recipe for how to do it. Different classes may order their members differently.
What is important is that each class order its members in some logical order, which its maintainer could explain if asked. For example, new methods are not just habitually added to the end of the class, as that would yield "chronological by date added" ordering, which is not a logical ordering.
- Class (static) variables: First the public class variables, then the protected, and then the private.
- Instance variables: First public, then protected, and then private.
- Methods: These methods should be grouped by functionality rather than by scope or accessibility. For example, a private class method can be in between two public instance methods. The goal is to make reading and understanding the code easier.
 Google Java Style, https://google-styleguide.googlecode.com/svn/trunk/javaguide.html
 Are there any Java method ordering conventions?, http://stackoverflow.com/questions/4668218/are-there-any-java-method-ordering-conventions