我想操作在main方法中聲明的名爲「players」的數組。我想在我的課堂中使用名爲「Glucksspielthread」的「玩家」 我知道我不能訪問「玩家」,因爲它是在主要方法中聲明的,並且對於其他類是不可見的。如何訪問另一個類的數組
我該如何解決這個問題?這裏是我的代碼:
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
public class Glucksspieltest {
public static void main(String[] args) {
int numPlayers = Integer.parseInt(args[0]);
int threadSize = Integer.parseInt(args[1]);
ExecutorService es = Executors.newFixedThreadPool(threadSize);
Glucksspielthread[] players = new Glucksspielthread[numPlayers];
for (int i = 0; i < numPlayers; i++) {
players[i] = new Glucksspielthread(i);
es.execute(players[i]);
}
}
}
class Thinker {
public static void think(int Millisekunden) {
try {
Thread.sleep(Millisekunden);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
public static void randomThink(int minMillisekunden, int maxMillisekunden) {
System.out.println("test");
}
}
class Glucksspielthread implements Runnable {
public int playerNumber;
Glucksspielthread(int number) {
playerNumber = number;
}
@Override
public void run() {
for (int i = 0; i <= playerNumber; i++) {
// here, I want to operate on array called "players" that is declared in the main method
}
}
}
使其成爲公共和靜態 – dumitru
只需在聲明您的類後將該數組設置爲變量字段,並且您可以在Glucksspieltest中的任何位置使用它。 – Lefteris008
我想在課堂上使用它「Glucksspielthread」 – Blnpwr