Java 如何在多个类上使用getter和setter

Java 如何在多个类上使用getter和setter,java,Java,我有一个3类1用于a和b,另一个用于GetterAndSetter,所以我在获取username的字符串值时遇到了一个问题,它给了我null,我的代码怎么了 class A { JTextfield txt; public A() { txt = new JTextField(); String userName = txt.getText(); GetterAndSetter gs = new GetterAndSetter(

我有一个3类1用于a和b,另一个用于GetterAndSetter,所以我在获取username的字符串值时遇到了一个问题,它给了我null,我的代码怎么了

class A {

    JTextfield txt;

    public A() {
        txt = new JTextField();
        String userName = txt.getText();
        GetterAndSetter gs = new GetterAndSetter();
        gs.setUsername(userName);
    }
}

class B {

    JTextField txt2;

    public B(GetterAndSetter gs) {
        txt2 = new JTextField();
        txt2.setText(gs.getUsername());
    }
}

public class GetterAndSetter{

    private String whatName;

    public void setUsername(String userName) {
        whatName = userName;
    }

    public String getUsername() {
        return whatName;
    }
}
此时

txt = new JTextField();
String userName = txt.getText();
userName
为空,因为您是从一个新创建的空文本字段中填充的。
就在那之后

GetterAndSetter gs = new GetterAndSetter();
gs.setUsername(userName);
您将空字符串设置为一个
GetterAndSetter
实例,但是可怜的
gs
实例没有在任何地方使用,并最终导致java垃圾收集器无效

否则,我希望
GetterAndSetter
类能够正常工作


另外,您似乎忘记了包含实际使用类
A
B
的代码。到目前为止,我还不知道您试图实现什么,这些类应该如何相互作用。

String userName=txt1.getText()?首先澄清你的问题..我的代码有什么问题?它没有编译。我只是把它缩短了。对不起。例如,用户在文本字段中输入用户名,我想将该用户名用于其他类,但我总是得到空值。@Xiaoxoo好的,如果句子中没有点或逗号,你真的需要用interfunction来写。人们真的很难读。你明白我的意思吗。这个问题太可怕了。请阅读并编辑此问题。。。不清楚您试图实现什么,也不清楚您如何运行此代码,也不清楚您期望的是什么。你希望人们如何理解你的问题?这个问题是一个很好的例子,说明了如何不提出这样的问题。除此之外:这段代码在很多方面都有缺陷,很明显,你是在胡思乱想。我强烈建议从比这更简单的事情开始。。。。。。