2

我有一个名为 LetterRect 的类,其中两个字段的类型为 LetterSquare。例如:

public class LetterRect : Microsoft.Xna.Framework.GameComponent
{
    private LetterSquare square1;                        
    private LetterSquare square2;
    private long indentificationNumber;
    ... other fields that are irrelevant to this question
}

我希望能够通过 square1 和 square2 获得对 LetterRect 对象的引用。我最初的解决方案是给 LetterRect 和对应的 square1 和 square2 相同的 IdentificationNumber 和一个长整数。但是,有没有办法在没有识别号的情况下访问 LetterRect?绝对不存在继承关系,它是一种组合,或“具有”关系。如果我没记错的话,Java 中有一个内部类的概念,其中内部类可以直接引用它所属的类的实例。那么,有没有更好的方法通过 square1 和 square2 来获取对 LetterRect 对象的引用呢?

感谢所有的帮助!

4

1 回答 1

1

尝试这个;

public class LetterRect : Microsoft.Xna.Framework.GameComponent
{
    private LetterSquare square1;
    private LetterSquare square2;
    public LetterRect()
    {
        square1 = new LetterSquare(this);
        square2 = new LetterSquare(this);
    }
}

public class LetterSquare 
{
    public LetterRect LetterRectProp { get; private set; }
    public LetterSquare (LetterRect letterRect )
    {
        this.LetterRectProp = letterRect;
    }
}
于 2012-05-11T14:39:24.123 回答