Essa regra não existe jovem camarada. Foi apenas um detalhe do exemplo que você pegou.
O “this”, nada mais é do que a referência do seu próprio Objeto.
Você pode ter atributos e métodos que pertencem à Classe assinados com static, e você tem atributos e métodos que pertencem ao Objeto criado a partir daquela Classe, no caso os que NÃO possuem o static.
Usando o this no seu código, você está explicitando que você está acessando recursos do objeto.
Ex:
public class Teste {
private String x;
public void setX(String x) {
this.x = x;
}
}
No caso acima, estou deixando claro que quero setar o Atributo passado no método que se chama X, no atributo do Objeto, que tem o mesmo nome.
Note que foi usado o this p/ deixar isto bem explicito p/ quem lê e para o compilador.
Abs