In eclipse jdt, there's the open-type command, which opens a window and you start typing the name of a type. While typing, the list of candidates are shown in that window is filtered dynamically and well, you select one of the types in the list to open it.
I tried to find out how to do this in lsp-java, but not very satisfied:
M-.nicely opens the thing under the cursor
M-x xref-find-aproposwell, this seems like a candidate, but I most often get
Arithmetic overflow errorback. Had it succeed just once, and also, it doesn't offer completion/filtering etc.
I hope I just miss something.