Seja bem vindo ao Fórum do JavaFree.org
Aqui você irá encontrar respostas para TUDO o que você precisa sobre java.
Deseja participar? Crie sua conta ou efetue seu login
Exemplo, eu tenho a classe Teste
e nela a variavel int testeNum;
agora vou exibir oque está na variavel testeNum, em uma outra classe.
Você cria uma nova instância para mostrar o valor da variável?
A pergunta original é exatamente como NÃO evitar isso, pois não funciona!
A sua solução é semelhante a comprar um novo carro para ver quanta gasolina tem no carro anterior - sem levar em conta o custo adicional, só vai saber quanta gasolina tem no novo carro!
Além disso, seguindo os conceitos da programação orientada a objetos, o correto seria a variável ser privada e se usar um método para obter o valor dela!
@jeanjn:
Existem várias possibilidades, depende dos detalhes do programa e (principalmente) do programador.
- uma é fazer como você escreveu, usando uma classe adicional para manter as instâncias - é bem fácil, mas pode causar alguns problemas (dificuldade de testar, por exemplo)
- passar a instância para a classe, ou no construtor, ou através de um método - desvantagem: o acoplamento 'rígido' entre as classes, mas provavelmente o mais indicado para o seu caso
- usar tipo um Listener/Interface junto com a opção anterior para diminuir o acoplamento
- ... _________________ Nome real: Carlos F. Heuberger
Removeram os meus direitos de administrador e moderador - sem aviso, pela segunda vez - contate o ombudsman (?), a equipejavafree ou a "alta gerência" se necessário - Que pena... que terminou dessa maneira!
Bom estou pensando em como fazer a partir de uma classe adicional, porém eu penso para eu usar ela em cada classe terei que inicializar a classe adicional e a mesma irá toda vez inicializar as classes e dará tudo no mesmo!
Bom estou pensando em como fazer a partir de uma classe adicional, porém eu penso para eu usar ela em cada classe terei que inicializar a classe adicional e a mesma irá toda vez inicializar as classes e dará tudo no mesmo!
Se estou errado por favor me dê exemplos.
Nossa eu "boiei" completamente, acho que o pouco que entendi, devo ter entendido mal, pois estou me perguntando qual a logica de criar uma clase com atributos que vc não quer atribuir valores???
@simu é fera mesmo... vc merece!!! _________________O melhor lugar para se esconder um cadáver, é na segunda página do Google.
Bom estou pensando em como fazer a partir de uma classe adicional, porém eu penso para eu usar ela em cada classe terei que inicializar a classe adicional e a mesma irá toda vez inicializar as classes e dará tudo no mesmo!
Se estou errado por favor me dê exemplos.
é mais ou menos a ideia do padrão Singleton - uma classe que só tem e só permite uma única instância. Não é minha preferida, mas funciona bem fácil. Exemplo (simplificado):
ou, mais sujo (não faça assim):
é claro que também pode fazer as próprias classes Visual e Salvar como Singleton. Exemplo:
não sei qual o significado, qual o conteúdo das classes, mas penso que a melhor solução é passar as instâncias (ou os valores) no construtor (ou num método set):
_________________ Nome real: Carlos F. Heuberger
Removeram os meus direitos de administrador e moderador - sem aviso, pela segunda vez - contate o ombudsman (?), a equipejavafree ou a "alta gerência" se necessário - Que pena... que terminou dessa maneira!
Que eu saiba mesmo que você não defina uma construtor para a sua classe JAVA cria uma construtor padrão inicializando os valores numéricos com 0 e as strings com null.
Você quer manipular as variáveis ? Use métodos Get e Set
Muito obrigado pessoal, bom depois de varios testes, usando as várias explicações de vocês cheguei a conclusão final de que meu código está uma bagunça e já não é possível eu estanciar os valores nessa altura do campeonato. A menos que eu refaça algumas coisas no meu código mas seria muito trabalhoso, como o objetivo principal do mesmo eu conclui e onde o erro está acontecendo era apenas um capricho então vou finaliza-lo por aqui mesmo =D
Muito obrigado pessoal, bom depois de varios testes, usando as várias explicações de vocês cheguei a conclusão final de que meu código está uma bagunça e já não é possível eu estanciar os valores nessa altura do campeonato. A menos que eu refaça algumas coisas no meu código mas seria muito trabalhoso, como o objetivo principal do mesmo eu conclui e onde o erro está acontecendo era apenas um capricho então vou finaliza-lo por aqui mesmo =D
Grato!
Cara vc pode declarar métodos e variáveis de uma classe como static. Que com isso, vc poderá setar um valor, e acessálos quando e onde quiser.
Ex:
_________________Estudante de Sistemas de Informação FIPP-Unoeste 7º Termo
Os computadores são incrivelmente rápidos, precisos e burros; Os homens são incrivelmente lentos, imprecisos e brilhantes; Juntos, seus poderes ultrapassam os limites da imaginação.
- Albert Einstein
Sim, mas li em outros tópicos que isto é uma prática errada no java e estou tentando fazer do modo certo, mas de qualquer forma obrigado! _________________Java é o poder!
Sim, mas li em outros tópicos que isto é uma prática errada no java e estou tentando fazer do modo certo, mas de qualquer forma obrigado!
Entenda, essa não é uma afirmação geral.
Talvez para seu caso não seja correto usar static mesmo, assim como em muitos outros casos.
Mas metodos e variaveis estáticas são muito úteis. Variáveis talvez não. mas métodos com certeza.
Um exemplo simples é declarar metodos de uma classe de Comunicação com o Banco de Dados:
Pois essas não é necessário criar novas quando houver necessidade de utilizalas. Já que são constantemente utilizadas, podem ser declaradas como estáticas.
Espero ter ajudado. _________________Estudante de Sistemas de Informação FIPP-Unoeste 7º Termo
Os computadores são incrivelmente rápidos, precisos e burros; Os homens são incrivelmente lentos, imprecisos e brilhantes; Juntos, seus poderes ultrapassam os limites da imaginação.
- Albert Einstein
Sim, mas li em outros tópicos que isto é uma prática errada no java e estou tentando fazer do modo certo, mas de qualquer forma obrigado!
Entenda, essa não é uma afirmação geral.
Talvez para seu caso não seja correto usar static mesmo, assim como em muitos outros casos.
Mas metodos e variaveis estáticas são muito úteis. Variáveis talvez não. mas métodos com certeza.
Um exemplo simples é declarar metodos de uma classe de Comunicação com o Banco de Dados:
Pois essas não é necessário criar novas quando houver necessidade de utilizalas. Já que são constantemente utilizadas, podem ser declaradas como estáticas.
Espero ter ajudado.
exatamente, o static é desaconselhado, mas sempre existe a exceção
- o importante é fazer um modelo de objetos coerente, normalmente isso resolve o problema de como declarar qual variável e onde innstanciar ela.... _________________ Nome real: Carlos F. Heuberger
Removeram os meus direitos de administrador e moderador - sem aviso, pela segunda vez - contate o ombudsman (?), a equipejavafree ou a "alta gerência" se necessário - Que pena... que terminou dessa maneira!
Bom estou pensando em como fazer a partir de uma classe adicional, porém eu penso para eu usar ela em cada classe terei que inicializar a classe adicional e a mesma irá toda vez inicializar as classes e dará tudo no mesmo!
Se estou errado por favor me dê exemplos.
é mais ou menos a ideia do padrão Singleton - uma classe que só tem e só permite uma única instância. Não é minha preferida, mas funciona bem fácil. Exemplo (simplificado):
ou, mais sujo (não faça assim):
é claro que também pode fazer as próprias classes Visual e Salvar como Singleton. Exemplo:
não sei qual o significado, qual o conteúdo das classes, mas penso que a melhor solução é passar as instâncias (ou os valores) no construtor (ou num método set):
Nossa, Vote Simu para presidente!
Explicação perfeita! simples e clara. Até eu que não sei N.A.D.A de Singleton entendi com essa explicação rsrs
Parabéns Simu! _________________Ricardo Arrigoni
Moderador JavaFree
Utilize a tag CODE Devo ou não marcar o tópico como resolvido ? Encontrou algo de errado acontecendo no JavaFree ? Envie uma MP para a coordenação do fórum aqui Manual de condutas para usuários / Manual de condutas para moderadores
Devmedia
jeanjnPosts:50
Boa tarde a todos!
Possuo 3 classes:
Visual (peso, altura, imc);
Salvar (nome, idade);
GerarPdf ();
Na classe GerarPdf preciso usar as variáveis da classe Visual e Salvar, porém se eu escrever:
A classe inteira sera inicializada novamente e não terá valor nenhum.
Preciso istanciar as variáveis sem inicializar o construtor novamente para poder trabalhar com os valores ja digitados.
Como poderia fazer isso?
pensei em criar uma quarta classe que gerencia todas as outras porém creio não ser o modo mais eficiente e muito complexo!
Grato!
_________________Java é o poder!
SpotBrPosts:51
P consultar variavel de outra classe usa
Exemplo, eu tenho a classe Teste
e nela a variavel int testeNum;
agora vou exibir oque está na variavel testeNum, em uma outra classe.
_________________null
simuPosts:9417