Por que é myString.equals ("aString"); diferente de "aString" .equals (myString);?

Ouvi várias vezes que, ao usarboolean equals(Object o) compararStrings, é melhor colocar a constante no lado esquerdo da função, como a seguir:

Bad: myString.equals ("aString"); Bom: "aString" .equals (myString);

Por que é isso