Override o que ser isso?

Galera qual a diferença se eu criar um metodo com ou sem Override?

[code]@Overrride
public void metodo(){
}

public void metodo(){
}[/code]

isso ai é o seguinte, imagina q vc tem uma classe com este método

public void metodo(Url x, String y){…}

Ai vc resolve sobreescrever o método, em outra classe, mas escreve isso:
public void metodo(String y, Url x){…}

Bom, por falta de atenção, vc não sobreescreveu mas sim sobrecarregou esse método com outra assinatura.

Se vc tivesse feito
@Override
public void metodo(String y, Url x){…}

O compilador iria berrar “ESSE MÉTODO NÃO ESTA SENDO SOBREESCRITO, VC ESTA CRIANDO UMA NOVA ASSINATURA, ACORDA!!!”

se você colocar um override em um método que não está sendo realmente sobrescroto ele dá um warning.

é util mesmo quanto temos aqueles casos de covariantes.

[quote=Shakall]Galera qual a diferença se eu criar um metodo com ou sem Override?

[code]@Overrride
public void metodo(){
}

public void metodo(){
}[/code]

[/quote]

vc aplica override através da herança e nao com dois metodos na mesma classe…
Se pensa que é assim que acontece está enganado veja:

class Over{
void metodo(){}
void metodo(){}
}

flw!!