Em Java, qual é a diferença entre ligação dinâmica e substituição de método?


resposta 1:
classe Animal {public void eat () {System.out.println ("Qualquer coisa"); }} a classe Horse estende Animal {public void eat () {System.out.println ("Legumes"); }} classe Teste {public static void main (String args []) {Animal obj; obj = novo Animal (); obj.eat (); obj = novo cavalo (); obj.eat (); }}
Qualquer coisa Legumes

resposta 2:

você quis perguntar a diferença entre "ligação dinâmica" e "sobrecarga" do método?

Como a substituição de método e a "invocação virtual de método" (ligação dinâmica) são as duas partes do polimorfismo java e são "ligeiramente diferentes" da sobrecarga de método: mesmo nome de método, mas assinatura diferente.


resposta 3:

você quis perguntar a diferença entre "ligação dinâmica" e "sobrecarga" do método?

Como a substituição de método e a "invocação virtual de método" (ligação dinâmica) são as duas partes do polimorfismo java e são "ligeiramente diferentes" da sobrecarga de método: mesmo nome de método, mas assinatura diferente.