この記事では、Javaのオブジェクト指向プログラミングの多型について説明します。次のように、参照のために共有してください。
多型:複数のフォームを表現する機能を持つ機能(同じ実装インターフェイスでは、異なるインスタンスを使用して異なる操作を実行します)
統一された呼び出しを容易にするために、多型を実装することの利点!
多型を達成するための3つの方法!
1。サブクラスから親クラスへの変換:
例:
犬の犬= new Dog( "euo"、 "schnauzer"); dog.eat(); pet pet = new Dog( "euoo"、 "schnauzer"); //サブクラスから親クラスへの変換(); pet.catchingflydisc();
ルール:
cild子クラスへの参照を上向き変換と呼ばれるオブジェクトを指し、タイプ変換を自動的に実行します。
parent Classを介して参照変数によって呼び出される方法は、親クラスの方法ではなく、親クラスの方法をオーバーライドまたは継承するチャイルドクラスです。
この時点で、サブクラスに固有の方法は、親クラスを介して変数を参照することで呼び出すことはできません!
2。親クラスを方法として使用して、正式なパラメーターを使用して多型を実装します
public class master {private string name = ""; private int money = 0; public Master(string name、int money){this.name = name; this.money = money; } public void feed(ペットペット){pet.eat(); } public void feed(dog dog){dog.eat(); } public void feed(ペンギンペン){pen.eat(); }} public class test(){public static void main(string [] args){Master Master = new Master( "Mr。Wang"、100);ペットペット= new Dog( "Euro"、 "Schnauzer"); Master.Feed(PET); }}3.親クラスをメソッドリターン値として使用して、多型を達成する
public class master {private string name = ""; private int money = 0; Public Pet getPet(int id){pet pet = null; if(id == 1){pet = new Dog( "europe"、 "schnauzer")} else if(id == 2){pet = new Penguin( "nana"、 "emermall penguin"); } PETを返します。 }}知らせ:
neversente遺伝の存在(相続は多型の基礎であり、相続なしでは、多型はありません)
parent Classを書き換えるサブクラスの方法
③サブクラスオブジェクトへの親クラス参照変数
Java関連のコンテンツを増やすために、このサイトに興味のある読者は、「Javaオブジェクト指向プログラミングに関する紹介と高度なチュートリアル」、「Javaデータ構造とアルゴリズムに関するチュートリアル」、Java Operation domノードスキルの要約」、「Javaファイルの概要、およびJava操作スキルの概要」の概要を見ることができます。
この記事がみんなのJavaプログラミングに役立つことを願っています。