「ポリモーフィズム」の章の「Thinking in Java」で「Late binding」の概念について読みましたが、この概念についての私の理解が正しいかどうか知りたいだけです
手続き型言語は、たとえば、実行前に実行する関数がどこにあるかを知っています
if(condition){func1();}else{func2();}
したがって、可能な各関数のアドレスは、プログラムが実行される前に正確にわかっているため、簡単にコンパイルできますが、OOL ではこのコードを調べます。
makeItSpeak(Animal a ){
a.speak();
}
a は dog 、 cat またはその他の Animal タイプである可能性があり、実行時にオブジェクトを初期化するため、実行時に speak を実行する引数を渡す必要があるため、これは実行時に発生する遅延バインディングです。 -時間 ....
本当 ??