Good question Javanator, As per my analysis
Code Readability:
Good practice to declare variables in method starting because easy for maintenance, and less confusion.
Performance:
Case 1:
If we declare variables in method beginning and method having hundreds of statements we need 10 variables at last before 50 statements unnecessarily occupying memory for those variables.
If we need 20 variables in method and we declared in beginning, if we get any exception in very beginning statement unnecessarily occupying memory.
case 2:
If we declare variables where we need it gives a bit more performance.