Насколько я понимаю, следующий код не должен compile
, так как мы не можем изменить включающие class
параметры при расширении не static
внутренний classes
.
Однако, этот код работает нормально.
class A<T0, T1> {
class B {
T0 t0;
T1 t1;
}
class C extends A<T1, T0>.B {
T0 t00 = t1;
T1 t11 = t0;
}
}
Пожалуйста, помогите мне понять, почему он ведет себя так, или мое понимание неверно.