Dúvida com instrução static final

Olá, estava lendo o livro do Deitel e vi uma declaração de atributos de instância como segue abaixo:

private final static int SNAKE_EYES = 2;

Dúvida: Se essa instrução já tem um final, qual seria a real utilidade de ter um static? Pois no livro está sendo criado um objeto da classe que contém essa instrução, entao se eu já tenho um objeto da classe eu não precisaria ter declarado esse atributo como static

Penso que foi colocado assim no livro apenas como didática, visto que ele sempre está usando um objeto para manipular a classe.

[]'s

O Java trata diferentemente uma variável “static final” de uma que é simplesmente “final”.

Se você tiver 1000000 objetos de uma determinada classe, será criada apenas uma instância de uma variável “static final”, mas serão criadas 1000000 instâncias de uma variável que é simplesmente “final”.

Nooosssaaa, isso é uma daquelas coisas da qual a pessoa não pode discutir. Simples e direto, não havia pensado por esse lado.

Obrigado, ajudou bastante.

[quote=thingol]O Java trata diferentemente uma variável “static final” de uma que é simplesmente “final”.

Se você tiver 1000000 objetos de uma determinada classe, será criada apenas uma instância de uma variável “static final”, mas serão criadas 1000000 instâncias de uma variável que é simplesmente “final”.
[/quote]

Vou falar como que eu entendo esse negócio de static final, e por gentileza, alguém me diz se está correta minha forma de pensar ou não ok?
Eu entendo assim: que a variavel é “static” porque ele é da “classe”, ou seja, podemos chamar no main:

 NomeDaClasse.SNAKE_EYES; 

Ou seja, mesmo que vc tenha 1 trilhão de objetos, vc não pode usar o valor dela a partir de um objeto.

E ela é “final” pq seu valor não pode ser alterado. Se vc mandar imprimir:

 print(NomeDaClasse.SNAKE_EYES);

Vai sair “2” obviamente. Mas se vc quiser que imprima outro valor, vai ficar apenas na vontade, pq não pode.

Um exemplo de variavel “static final” é a PI, da classe “java.lang.Math”.
Chamamos ela asism: Math.PI; pq ela é static, ou seja não preciso dar NEW.
e final pq seu valor é tão somente único: 3,14…