我在使用 Python 移植 Java 项目时遇到了一些问题。基本上我不明白的是,第 4 行做了什么。 Dice 是在别处定义的一个类。我非常确定它不会从 Dice 类创建对象或实例。它只是为以后的创建分配内存吗?我真的没有头绪。

有问题的代码:

1 public class Move {
2
3  // the dice used for this move
4  protected Dice dice;
5  // the set of movements used to perform this move, in this order
6  protected Movement[] movements;
7  .....}

P.S:stackoverflow 有这么棒的社区!到目前为止,我所有的问题都可以通过检查here来解决。但是现在我迷路了,不得不最终创建一个帐户;)

最佳答案

该语句声明了一个类成员。局部对象/变量的类成员是不同的,因为它们可以从整个类访问。在这种情况下,它定义了一个名为 Dicedice 类型的 protected 对象。

该语句实际上并未创建 Dice 对象;它只是说明它存在。如果你要使用它,你可以在一个方法中实例化它。例如:

public class Move {
    protected Dice dice;
    ...
    public void someMethod() {
        dice = new Dice();
    }
}

关于在另一个类中使用的 Java 对象和类,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/31747686/

10-12 21:01