It is a very simple question, but I think it is a little bit controversial.
When I code Java classes I use the following order.
class Foo {
// stati
Personally I use option 2 (static fields and methods prior to instance elements and constructs). To me this makes sense when scanning a file because from a user of a class, I can access the static stuff without needing an instance. Therefore it is nice to see them prior to the constructors because I don't care about constructors when using static stuff.