Pegar o conteudo de um JTextFild de uma classe e utiliza-lo em outra classe

Senhores,
Tenho duas classes distintas, A e B.
Na classe A, tenho o Atributo Descrição, que é capturado por um jTextFild.
Na classe B, preciso trabalhar com o Atributo Descrição da Classe A.

Como eu faço isso?

Muito Obrigado.

ClasseA


class B {
    public void metodoY(String a) {
        System.out.println(a);
    }
}

class A extends JFrame {
    private JTextField text;
    public void metodoX() {
        String texto = text.getText();
        B b = new B();
        b.metodoY(b);
    }
}

ou cria o textfield da classe A como static
dae vc chama ela na classe B
e manda pra string

A a = new A();
string pega = a.nome_text_field.gettext();

se não me engano é assim

Amigo, desculpe a ignorancia, mas não consegui fazer.

vou mostrar como é o meu problema

Na classe frmContato, há um atributo de nome Descrição que é capturado pelo jTextFild de nome TxtDescrição.
Pois bem, este atributo será utilizado na classe frmEnderecoContato, sendo que o jTextFild de nome TxtContato ira receber o atributo frmContato da classe frmContato.

muito obrigado pela sua ajuda, mas acontece que sou muito iniciante ainda, ai tenho muita dificuldade com coisas simples.
espero que vc possa me ajudar novamente

obrigado!

[quote=marcoscorso]ou cria o textfield da classe A como static
dae vc chama ela na classe B
e manda pra string[/quote]

static é a pior forma de resolver esse tipo de problema. É tão ruim, que deveria ser considerado anti-pattern.

Variáveis estáticas:
a) Tem contexto global, nunca saem de escopo, e são responsáveis pela maioria dos leaks de memória;
b) Não são coletadas pelo gc, a menos que sejam setadas para null especificamente;
c) São difíceis de tornar thread-safe, e inerentemente avessas a paralelismo;
d) Contribuem para uma abordagem não orientada a objetos de resolver o problema;
e) Quase sempre podem ser substituídas por variáveis não estáticas, quase nunca são realmente necessárias.

Um exemplo de problema do que sua sugestão poderá causar. Todo componente tem um link para seu owner. Isso significa que o JTextField, como nunca sai de escopo por ser estático, irá manter também seu JPanel vivo, que por sua vez manterá o JFrame. E isso fará com que seu JFrame inteiro jamais seja coletado pelo garbage collector, a menos que você faça um set no JTextField especificamente para null.

[quote=ViniGodoy][quote=marcoscorso]ou cria o textfield da classe A como static
dae vc chama ela na classe B
e manda pra string[/quote]

static é a pior forma de resolver esse tipo de problema. É tão ruim, que deveria ser considerado anti-pattern.

Variáveis estáticas:
a) Tem contexto global, nunca saem de escopo, e são responsáveis pela maioria dos leaks de memória;
b) Não são coletadas pelo gc, a menos que sejam setadas para null especificamente;
c) São difíceis de tornar thread-safe, e inerentemente avessas a paralelismo;
d) Contribuem para uma abordagem não orientada a objetos de resolver o problema;
e) Quase sempre podem ser substituídas por variáveis não estáticas, quase nunca são realmente necessárias.

Um exemplo de problema do que sua sugestão poderá causar. Todo componente tem um link para seu owner. Isso significa que o JTextField, como nunca sai de escopo por ser estático, irá manter também seu JPanel vivo, que por sua vez manterá o JFrame. E isso fará com que seu JFrame inteiro jamais seja coletado pelo garbage collector, a menos que você faça um set no JTextField especificamente para null.[/quote]

Boa explicação.Mas qual seria a sugestão para o nosso amigo Luiz Gustavo?

A solução é a que o thiago deu, passar por parâmetro.

Aqui tem um exemplo completo disso:
http://www.guj.com.br/posts/list/55710.java#292687