私の理解では、あなたは私が求めていることを実行できないということです. 以下のコードのスター付き ( * ) コメント付きエラーを見ると、私が何にアクセスしようとしているかがわかります。メソッドを使用して多くのオブジェクトを動的に作成し、他のオブジェクトからそれらすべてのオブジェクトにアクセスできるようにするために、これを行う必要があると感じています。
私が行方不明になっているこれを行う方法はありますか、それとも何かを台無しにしているだけですか? そうでない場合、以下と同じ機能を得るにはどうすればよいですか? オブジェクトを渡す以外にこれを行う方法がある場合は、それを高く評価します (オブジェクトを渡すことは、特にオブジェクトの多次元配列の場合、非常に多くの作業のように思えます。パッケージ プライベート オブジェクトをインスタンス化する簡単な方法があるはずです。パッケージ内のどこからでもアクセスできます)。しかし、渡すことが唯一の方法である場合は、特にオブジェクトの束の 2 次元配列を渡す場合に、最善の方法を教えてください。ありがとう!
package simpleclasswithinclasstest;
class Game {
static int boardSize;
Engine gameEngine;
Game() {
}
public void run() {
gameEngine = new Engine();
gameEngine.play();
}
public int getBoardSize() {
return boardSize;
}
}
class Engine {
int boardSize;
Engine() {
}
public void play() {
this.boardSize = currentGame.getBoardSize(); // *****1 Error is here.
// *****It doesn't recognize currentGame, but I want it to.
}
void doNothing() {
}
}
class Board {
Board() {
}
void Test() {
gameEngine.doNothing(); // 2 *****Error is here.
// *****It doesn't recognize gameEngine.
}
}
public class SimpleClassWithinClassTest {
static Game currentGame;
public static void main(String[] args) {
currentGame = new Game();
currentGame.run();
}
}