determining java types