Na verdade, percebi que talvez não fosse a classe interna.

Acabei de verificar que sempre que tento acessar de um método não
estático a referência única (ao invés de usar this) com a chamada
Game.getInstance() dá esse erro, embora não faça sentido.

Em 05/06/11, Matheus Henrique Klem Galvez<[email protected]> escreveu:
> Pessoal. Tirei a classe interna e funcionou. Não sei qual foi o problema.
> Pq
> será que assim não funciona???
>
> Em 5 de junho de 2011 14:16, Matheus Henrique Klem Galvez <
> [email protected]> escreveu:
>
>> Olá,
>>
>> Estou c/ um problema bem estranho aqui na minha implementação. Minha
>> classe Game usa o design Sigleton, pois só desejo que ela tenha uma
>> instância. Para isso, fiz como manda o protocolo:
>>
>> 1 - criei uma variável estática do tipo Game e a chamei de instance;
>> 2 - coloquei o construtor como private;
>> 3 - criei um método estático público chamado getInstance(), cuja
>> implementação segue abaixo:
>>
>>
>> public static Game getInstance() {
>>        if (Game.instance == null) {
>>                Game.instance = new Game();
>>        }
>>        return instance;
>> }
>>
>> Tudo funcionava bem, pois só chamava o método getInstance() uma vez,
>> ao início do jogo.
>> O problema é que criei uma classe interna para fazer algumas coisas
>> dentro da classe Game e quando chamo a variável instance dentro desta
>> classe interna sempre retorna NullPointerException, pois ela vale
>> nulo, mesmo já tendo criado a instância de Game no começo! Note que,
>> se ao invés de acessar a própria variável instance eu colocar
>> Game.getInstance(), ele simplesmente vai criar outra instância de jogo
>> e aparece o menu inicial ao invés do que eu quero. É o mesmo problema,
>> mas de outra forma: a variável instance volta para nulo
>> misteriosamente.
>>
>> Notem que, mesmo eu colocando a variável instance como final (já
>> tentei), ela ainda assim volta misteriosamente para null.
>>
>> --
>> You received this message because you are subscribed to the Google Groups
>> "Comp 2 - Geral" group.
>> To post to this group, send email to [email protected].
>> To unsubscribe from this group, send email to
>> [email protected].
>> For more options, visit this group at
>> http://groups.google.com/group/comp2-geral?hl=en.
>>
>>
>
>
> --
> ___________________________________
> *"Se, a princípio, a ideia não é absurda, então não há esperança para ela."
> Albert Einstein :D *
> ___________________________________
>


-- 
___________________________________
*"Se, a princípio, a ideia não é absurda, então não há esperança para ela."
Albert Einstein :D *
___________________________________

-- 
You received this message because you are subscribed to the Google Groups "Comp 
2 - Geral" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/comp2-geral?hl=en.

Responder a