oi Luiz,
é exatamente o que vc falou, a segunda chamada é a que valerá, mas é arrado vc afirmar que "mesma instância de MinhaClasse" , acho que vc quiz dizer isso:
public class MinhaClasse {
private static MinhaClasse objeto ;
public static void newObjeto() {
objeto = new ClasseObjeto();
}
}
Sendo assim é correto afirmar que todos os clientes terão "suas" variáveis 'objeto' alteradas a cada instância de um cliente. Caso vc queira isso que eu estou tentando dizer é mais intuitivo fazer assim:
public class MinhaClasse {
private static MinhaClasse objeto ;
public static MinhaClasse getInstance() {
if (objeto ==null)
objeto = new MinhaClasse();
return objeto;
}
private MinhaClasse(){
//construtor PRIVADO da sua classe
}
}
espero ter ajudado.
Qualquer coisa email-me.
[]'s
Atenciosamente
PAULO BRANCO
DIRETIVA DIGITAL
"Luiz Reginaldo" <[EMAIL PROTECTED]>
13/05/2002 15:19
|
Para: <[EMAIL PROTECTED]> cc: Assunto: [java-list] -- Dúvida! |
Pessoal,
Estou com uma dúvida bem interessante. Vamos supor que você tenha uma classe, e na mesma existam alguns métodos estáticos. Existe, nessa classe, um método static newObjeto() que cria uma nova instância de um campo static objeto.
public class MinhaClasse {
private static objeto ;
public static void newObjeto() {
objeto = new ClasseObjeto();
}
}
Pois bem, a pergunta é a seguinte: Esta classe será utilizada por clientes em uma aplicação web. Todos os clientes verão a mesma instância de MinhaClasse? Por exemplo, se um cliente chamar newObjeto(), e um segundo cliente chamar newObjeto(), a segunda chamada de método faz com que o objeto do meu primeiro cliente será substituído???
Um grande abraço,
Luiz Reginaldo