How does Sonarqube locate the same issue in multiple scans?

For example, I found that after multiple scans, even if the line number of the code changes, Sonarqube can always locate the same issue.

I saw relevant content on the documentation, at

I am curious how it works and where in the source code can you tell me?