ホームページ > Java > &#&チュートリアル > コンパイル時ポリモーフィズムと実行時ポリモーフィズムの違いは何ですか?

コンパイル時ポリモーフィズムと実行時ポリモーフィズムの違いは何ですか?

WBOY
リリース: 2023-09-03 12:57:07
転載
1125 人が閲覧しました

コンパイル時ポリモーフィズムと実行時ポリモーフィズムの違いは何ですか?

ポリモーフィズムは、OOP の最も重要な概念の 1 つです。これは、単一のタスクを複数の方法で実行できるという概念です。ポリモーフィズムには 2 つのタイプがあり、1 つはコンパイル時ポリモーフィズム、もう 1 つは実行時ポリモーフィズムです。

メソッドのオーバーロードはコンパイル時のポリモーフィズムの一例であり、メソッドのオーバーライドは実行時のポリモーフィズムの一例です。

メソッドのオーバーロードはコンパイル時のポリモーフィズムの一例であり、メソッドのオーバーライドは実行時のポリモーフィズムの一例です。 p>

動的バインディングを通じて達成可能#を達成することを決意

##4.5コンパイル時のポリモーフィズムの例
上級。 キー コンパイル時のポリモーフィズム 実行時のポリモーフィズム
1

Basic

コンパイル時ポリモーフィズムとは、コンパイル時にバインディングが発生することを意味します

実行時ポリモーフィズム プロパティ。実行時には、どのメソッドが呼び出されるかがわかっています

#2

静的/動的Binding

##静的バインディングを通じて達成可能

継承

は関与しません 継承

継承の関与

メソッドのオーバーライドはコンパイル時のポリモーフィズムの例です

メソッドのオーバーライドは実行時のポリモーフィズムの例です

public class Main {
   public static void main(String args[]) {
      CompileTimePloymorphismExample obj = new CompileTimePloymorphismExample();
      obj.display();
      obj.display("Polymorphism");
   }
}
class CompileTimePloymorphismExample {
   void display() {
      System.out.println("In Display without parameter");
   }
   void display(String value) {
      System.out.println("In Display with parameter" + value);
   }
}
ログイン後にコピー

実行時のポリモーフィズムの例

public class Main {
   public static void main(String args[]) {
      RunTimePolymorphismParentClassExample obj = new RunTimePolymorphismSubClassExample();
      obj.display();
   }
}

class RunTimePolymorphismParentClassExample {
   public void display() {
      System.out.println("Overridden Method");
   }
}

public class RunTimePolymorphismSubClassExample extends RunTimePolymorphismParentExample {

   public void display() {
      System.out.println("Overriding Method");
   }
}
ログイン後にコピー

以上がコンパイル時ポリモーフィズムと実行時ポリモーフィズムの違いは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:tutorialspoint.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート