研究から私が学んだこと:
オーバーロード、演算子のオーバーロード、およびオーバーライドは、ポリモーフィズムと呼ばれるものです。
ポリモーフィズムとは、同じエンティティが時々異なる動作をすることを意味します
例えば:
パラメトリック
add(12, 13);
add(12.2, 13.3);
同じエンティティ(add())が時々異なる動作をする( double で機能し、 int で機能します)。
// テンプレートはここでも機能します
このために
Animal dogInstance = new Dog();
Animal catInstance = new Cat();
dogInstance.sound(); //bark
catInstance.sound(); //meow
同じエンティティ ( sound() ) が時々異なる動作をする場合、
sound() はインスタンス (犬または猫) に応じて機能します)。
オーバーロード、テンプレート、およびジェネリックはコンパイル時に発生します (コンパイル時のポリモーフィズム)。
オーバーライド、演算子のオーバーロードは実行時に発生します (実行時ポリモーフィズム)。
パラメトリック ポリモーフィズムとは、同じコードを複数のデータ型に適用できる場合です。
元。オーバーロード、テンプレート、およびジェネリック
アドホック ポリモーフィズムとは、異なるデータ型に対して異なるコードが使用される場合です。
元。オーバーライド、演算子のオーバーロード
追加の質問:
演算子がアドホック (動的バインディング) にオーバーロードされるのはなぜですか?
また:
あなたがプログラマーである場合、ランタイム ポリモーフィズム、コンパイル時ポリモーフィズム、動的リンク、静的リンク、フレームワークの意味、
フレームワークとライブラリの違い、軽量フレームワークとは何かなどを気にする必要があります。私のプログラムが機能する限り、プログラミング?