Trochę gmatwasz problem i nie wiem czy to z braku wiedzy, czy już faktycznie pytasz o co pytasz.
- Czy z klasy B, chcesz mieć dostęp do tego co aktualnie jest w klasie A?
- Czy chcesz z poziomu klasy B zmieniać to co jest w klasie A?
- Czy klasa B ma być używana gdzieś jeszcze, czy tylko w klasie A?
Jeżeli na pierwsze 2 pytania odpowiedziałeś "tak", to odpowiedź brzmi tak:
Da się tak zrobić w Javie, ale na szybko nie potrafię sobie wymyślić zastosowania, w którym było by to poprawne z punktu widzenia struktury aplikacji.
Np. klasa wewnętrzna ma możliwość dostania się prywatnych właściwości klasy zewnętrznej:
public class A{
int index = 0;
class B{
public int doubledIndexA(){
return A.this.index * 2;
}
}
}
Ale też nie da się w takim przypadku wykorzystać klasy B gdzie indziej. Zresztą same inner class
nie są specjalnie pięknym rozwiązaniem.