I read in "Thinking in java" in chapter "Polymorphism" about the concept of "Late binding" , i just wanna know if my understanding of this concept is true
Procedural languages know where is the function to execute before run-time for instance
if(condition){func1();}else{func2();}
So the address of each possible function is known exactly and before the program runs , so it is compiled easily , but in OOLs examine this code ,,
makeItSpeak(Animal a ){
a.speak();
}
While a may be a dog , a cat or any other Animal type , and because we initialize objects at run-time , so we must pass the argument upon which we run speak at run-time , so this is late binding which occurs at run-time ....
IS THAT TRUE ??