public class Card
{
private Rank aRank;
private Suit aSuit;
public Card( Card pCard )
{
aRank = pCard.aRank;
aCard = pCard.aSuit;
}
...
我有点困惑。引用发生在同一个类的成员之间,但我认为你可以在没有getter的情况下访问私有变量的唯一方法是它引用同一个类的方法中的私有变量,并且它必须在调用者的内部。范围(如果这有意义?意味着我们只能访问调用者的实例变量)。但在这种情况下,pCard不是构造函数的调用者;它只是作为参数传递的另一个对象。所以我期待的是:
public class Card
{
private Rank aRank;
private Suit aSuit;
public Card( Card pCard )
{
aRank = pCard.get_aRank();
aCard = pCard.get_aSuit();
}
...