无法弄清楚为什么我的方法出现异常

Can't figure out why i'm getting an exception for my method

所以我正在制作一个服务器套接字,我调用构造函数来构造服务器套接字,然后调用 getLocalPort 方法来获取本地端口,但是 server.getLocalPort();抛出一个空指针异常,我不明白为什么我被难住了。我确定这是一些愚蠢的错误,但我就是看不到它。

 public SServer(int port) throws SocketException, IOException 
{
    ServerSocket server = new ServerSocket(port);
    server.setReuseAddress(true);
}
public int getLocalPort() {
    int port = server.getLocalPort();
    return port;
}

您在构造函数中初始化了一个本地变量,而不是初始化 class 的成员。因此,您的 server 成员仍然为空。

改变

public SServer(int port) throws SocketException, IOException 
{
    ServerSocket server = new ServerSocket(port);
    server.setReuseAddress(true);
}

public SServer(int port) throws SocketException, IOException 
{
    server = new ServerSocket(port);
    server.setReuseAddress(true);
}