我的理解是你不能按照我的要求去做。如果您查看下面代码中的星号 ( * ) 注释错误,您可以看到我正在尝试访问的内容。我觉得我需要能够做到这一点,以便我可以使用一种方法来动态创建许多对象,然后从其他对象访问所有这些对象。
有没有办法做到这一点,我错过了,或者我只是把事情搞砸了?如果没有,我应该如何做才能使我获得与以下相同的功能?如果除了传递对象之外还有其他方法可以做到这一点,那将不胜感激(传递对象似乎有很多工作 - 特别是对于多维对象数组 - 应该有一种简单的方法来实例化包私有对象,可以可以在包中的其他任何地方访问)。但是如果传递是唯一的方法,请让我知道最好的方法,特别是当我传递一堆对象的二维数组时。谢谢!
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();
}
}