gpt4 book ai didi

java - 数组在一个类中初始化,但内容在另一个类中无法访问

转载 作者:太空宇宙 更新时间:2023-11-04 11:09:24 24 4
gpt4 key购买 nike

我有一个javafx应用程序,它有两个类,即“Client”和“Interface_Client_Impl”。我在“Client”类中定义了一个 int 数组和一个初始化该数组的函数。当我尝试从 Interface_Client_Impl 访问索引 i 处的数组内容时,它总是返回 0。Interface_Client_Impl 类是远程访问的,我能够获取变量的值,但不能获取数组。我哪里出错了。 -_-这就是我所拥有的。

public class Client extends Application
{
public int size = 4;
public int array[] = new int[size];
public int min = 1;
public int max = 99;

public static void main(String[] args) throws Exception
{
launch(args);
}

@Override
public void start(Stage primaryStage) throws NotBoundException, RemoteException
{
initialize_arr();
//other codes
}

public void initialize_arr()
{
Random rand = new Random();
for(int i = 0; i < size; i++)
{//initialize with random values
int val = rand.nextInt(max - min + 1) + min;
array[i] = val;
}
}
}

//另一个类

public class Interface_Client_Impl extends UnicastRemoteObject implements Interface_Client
{
public Client client = new Client();

@Override
public int exchange(int val)
{
Random rand = new Random();
int pos = rand.nextInt(client.size);
int return_val = client.array[pos];
client.array[pos] = val;
return return_val;
}
}

最佳答案

您刚刚在 Interface_Client_Impl 类中创建了 Client 实例

您需要调用客户端实例的数组初始化。您可以通过以下两种方式进行

通过调用公共(public)方法client.start(primaryStage)

通过调用公共(public)方法client.initialize_arr()

关于java - 数组在一个类中初始化,但内容在另一个类中无法访问,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46191455/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com