将数据成员存储在对象中

时间:2013-02-05 01:15:31

标签: java

如何存储/访问存储到对象/从对象存储的数据?

我正在尝试创建一个非常简单的游戏,所以我创建了一个对象数组来存储有关玩家的信息,如下所示:

     player[] p = new player[4];

然后将播放器对象放入数组中:

for(int i = 0; i < 4; i++)
{
p[i] = new player();
}

上面应该创建一个包含4个元素的数组,每个元素都有一个播放器对象。

现在......是我迷路的地方。这是将数据成员放入对象的语法吗?

player() = {name, turn, rolledNumber}

// String name,boolean turn,int rolledNumber

//得到这个关闭维基可能不是一个安全的赌注,但在Oracle Tutorial网站和其他java教程网站上搜索了几个小时后,我空手而归。我已经看到这对数组完成了所以我认为它在某些方面会有所不同。

抱歉,如果这是一个空洞的问题,我只是开始学习java作为一种爱好。

2 个答案:

答案 0 :(得分:1)

不是使用Player的默认构造函数,而是可以添加一个带有nameturn&amp;的参数的构造函数。 rolledNumber,然后您可以使用:

for(int i = 0; i < 4; i++) {
  p[i] = new Player(name, turn, rolledNumber);
}

仍然可以通过setter&amp; amp;干将。这称为encapsulation

Java code conventions表示类占用首字母大写字母,因此player已根据指南编写为Player

答案 1 :(得分:1)

为了将信息存储到Player类中的状态(即在本例中为name,turn,rolledNumber)变量,您需要在自定义构造函数中设置它们,将它们公开(通常是个坏主意),或者提供getter / setter方法。鉴于您可能希望依次更改数据和以后滚动编号,但不能命名一个可能的解决方案是使用构造函数和getter / setter方法实现一个类,如下所示......

public class Player
{
    private String playerName;
    private boolean playerTurn;
    private int rolledNumber;

    public Player(String name, bool turn, int number)
    {
        playerName = name;
        playerTurn = turn;
        rolledNumber = number;
    }

    public String getName() { return playerName; }
    public boolean getPlayerTurn() { return playerTurn; }
    public void setPlayerTurn(boolean turn) { playerTurn = turn; }

    ...

}

然后根据Reimeus上面的示例调用构造函数。