我可以从内部 class 访问 "secondary this" 吗?

Can I access the "secondary this" from an inner class?

我有基本的classes

abstract class Unit {
    Unit target;
    abstract class UnitAI {/*...*/}
}

从这些,我得出

class Infantry extends Unit {
    class InfantryAI extends UnitAI {/*...*/}
}

class InfantryAI 能否以某种方式获得 次要 (implicit) this 用于访问它周围的成员 class Infantry?

具体来说,它需要确定它周围的 class Infantry 是否被它的目标所瞄准,像这样:

if (/*secondary_this.*/target.target == secondary_this)

或者,一般来说,由另一个 Unit

您可以访问 outer this 通过在 class 名称前加上:

Infantry.this.target; //"this" of the Infantry class from inside InfantryAI
Unit.this.target; //"this" of the Unit class from inside UnitAI

这不适用于 static 嵌套的 classes,因为它们不属于外部 class.

的实例