SomeClass.this
/ YAClass.this
- ссылка this
на внутренний класс, включающий SomeClass
/ YAClass
класс.
class SomeClass {
private InnerClass {
public void foo() {
SomeClass outerThis = SomeClass.this;
[...]
}
}
}
(Вам нужно быть очень осторожным, какое this
вы получите, особенно когда имеете дело с операциями, которые могут быть применены к любой ссылке Object
. Распространенным случаем является синхронизация this
во внутреннем классе, когда код должен синхронизироваться с внешним экземпляром (в этом случае лучше использовать явный объект блокировки).
AnotherClass.class
- объект java.lang.Class
для класса AnotherClass
. До Java 1.5 это было реализовано с использованием Class.forName
(инициализация класса); с 1.5 расширен байт-код ldc
для прямой поддержки.
Class<AnotherClass> clazz = AnotherClass.class;
Оба были введены в Java 1.1.