Acesso à variáveis de métodos

3 respostas
J

Olá pessoal, é meu primeiro post aqui, embora já tenha visitado o fórum várias vezes graças ao Sr. Google.

Enfim, queria saber se é possível acessar diretamente uma variável(a variável, e não seu valor) que é declarada dentro de determinado método.
Por exemplo, um evento acontece e um vetor de comprimento n (n é obtido em um textfield) é gerado. Depois uma outra ação executa um método que precisa utilizar esse vetor, mas o método não encontra o vetor que foi declarado.
Existe algum meio de um método ter acesso à uma variável criada por outro método?

Melhor dizendo até, existe algum meio criar uma variável global dentro de um método?

3 Respostas

kaique

No momento em que você cria uma variável, ela “viverá” somente dentro do escopo em que ela foi criada. Nesse caso, dentro do método a variável é criada, e no final do método (fim do escopo), essa variável deixará de existir, ou pelo menos não poderá mais ser acessada, elegendo-a a ser recolhida pelo garbage collector.
Uma forma de você poder acessar uma variável fora do escopo em que ela foi criada, por exemplo, tentar acessar essa variável de um outro método, é você retorná-la ao final do método. Acho que isso resolve…

[]'s.

rolemberg

Sempre que vc passar uma variavel para um metodo, estará passando para o metodo a sua copia, parece que vc quer receber de um metodo o valor que ele gerou correto??? a melhor forma de fazer é exatamente o que o amigo disse: chamar o metodo que contem essa variavel, pois variaveis criadas dentro de metodo vivem somente ali…

at

KWill

jet:
Olá pessoal, é meu primeiro post aqui, embora já tenha visitado o fórum várias vezes graças ao Sr. Google.

Enfim, queria saber se é possível acessar diretamente uma variável(a variável, e não seu valor) que é declarada dentro de determinado método.
Por exemplo, um evento acontece e um vetor de comprimento n (n é obtido em um textfield) é gerado. Depois uma outra ação executa um método que precisa utilizar esse vetor, mas o método não encontra o vetor que foi declarado.
Existe algum meio de um método ter acesso à uma variável criada por outro método?

Melhor dizendo até, existe algum meio criar uma variável global dentro de um método?

Existem meios de “guardar” variáveis de modo que elas possam ser acessadas globalmente. Um dos modos é criar uma Collection como atributo publico e estático de uma classe. Conforme a sua necessidade, você pode, dependendo que qual implementação de Collection você usar, inserir, atribuir, recuperar e remover as suas variáveis nessa Collection que pode ser acessada como atributo publico e estatico.

Devo lhe alertar que o uso de “variáveis globais” é nociva aos princípios de Orientação a Objeto. Lembro-me de diversos códigos em VB que mexi que adoravam declarar variáveis globais.

Inté.

Criado 6 de setembro de 2007
Ultima resposta 6 de set. de 2007
Respostas 3
Participantes 4